vue3+vite+TS错误: 找不到模块“./App.vue”或其相应的类型声明,如何解决?

vue3+vite+TS错误: 找不到模块“./App.vue”或其相应的类型声明。
创建了 env.d.ts 文件,加入了

declare module "*.vue" {
    import type { DefineComponent } from "vue";
   
    const vueComponent: DefineComponent<{}, {}, any>;
   
    export default vueComponent;
}

并且在tsconfig.json文件中配置了

{
  "compilerOptions": {
    "target": "esnext",
    "module": "esnext",
    "strict": false,
    "jsx": "preserve",
    "moduleResolution": "node"
  }
}



还是报错,想问一下怎么解决,谢谢!!

先确认是找不到 app.vue 还是 找不到其 类型声明文件。

前者:
App.vue文件没有放在正确的位置。请检查文件路径是否正确。
App.vue文件名大小写问题。请检查文件名是否与代码中引用的文件名大小写一致。

后者:
如果使用了TypeScript,可以通过安装必要的类型声明文件来解决问题。例如,安装@types/vue来获取Vue的类型声明文件。
如果以上方法都无法解决问题,可以尝试重新安装相关的依赖包,或者使用其他编辑器或开发环境来进行开发。

“Devil组”引证GPT后的撰写:
这个错误可能是因为 TypeScript 没有正确解析 Vue 组件的类型定义导致的。以下是一些可能的解决方案:

确保在 tsconfig.json 文件中启用了 resolveJsonModule 选项:

{
  "compilerOptions": {
    "resolveJsonModule": true
  }
}


如果你使用的是 vue-cli 来创建项目,你可以尝试在 tsconfig.json 文件中启用 esModuleInterop 选项:

{
  "compilerOptions": {
    "esModuleInterop": true
  }
}


在你的组件中,尝试使用 import() 来导入组件,如下所示:

import { defineAsyncComponent } from 'vue';

export default defineAsyncComponent(() => import('./App.vue'));


如果上述方法都不起作用,你可以尝试将 App.vue 文件重命名为 App.vue.ts,这样 TypeScript 就可以正确地解析它的类型定义了。

重新安装了依赖包,已经解决了