起因: vscode中的ts不支持.vue文件;
- 办法一:自己声明vue的modle类
- 那么就需要添加一下 .vue 类型文件的声明,步骤如下:
-
在根目录(也就是 tsconfig.json这一级)下新建名为 ”vue.d.ts“ 的文件。文件名中的 ”vue“ 也可以改为任一名称。
-
在 ”vue.d.ts“ 文件中写入以下声明:
js 复制代码 // 以下两种方案二选一 // 方案一 declare module "*.vue" { import Vue from "vue"; export default Vue; } // 方案二 declare module '*.vue' { import { defineComponent } from 'vue' const Component: ReturnType<typeof defineComponent> export default Component } -
在 ”tsconfig.json“ 中,将第二步中创建的文件 ”vue.d.ts“(或者你自己新建的其他名称的 .d.ts 文件)添加到 include 中:
js 复制代码 "include": [ "vue.d.ts" ],
- 缺点:* 所有的vue模块指向都会指到 vue.d.ts 文件
方法二:volar接管模式
VSCode原生是不支持vue文件的,所以需要volar插件支持,而VSCode本身的Typescript与volar中有冲突,所以我们需要在工作区禁用VSCode默认的TS; vue官方参考: cn.vuejs.org/guide/types…