Typescript vue3类型脚本问题,如何修复ts(2305)错误?
Typescript vue3类型脚本问题,如何修复ts(2305)错误?,typescript,vue.js,vuejs3,Typescript,Vue.js,Vuejs3,声明模块'*.vue'{ 从“vue”//module“./node_modules/vue/dist/vue”导入类型{DefineComponent}没有导出成员“DefineComponent”。ts(2305) 常量组件:定义组件 导出默认组件 } 声明模块“@vue/runtime core”{ 导出接口组件CustomProperties{ $goto:有吗 } } 为什么会有这样的错误报告?我不清楚,如何修复它?定义组件应该如下声明 import { defineComponen
声明模块'*.vue'{
从“vue”//module“./node_modules/vue/dist/vue”导入类型{DefineComponent}没有导出成员“DefineComponent”。ts(2305)
常量组件:定义组件
导出默认组件
}
声明模块“@vue/runtime core”{
导出接口组件CustomProperties{
$goto:有吗
}
}
为什么会有这样的错误报告?我不清楚,如何修复它?定义组件应该如下声明
import { defineComponent } from 'vue'
const Component = defineComponent({
// type inference enabled
})
更多全局声明模块将覆盖原始声明,因此模块“@vue/runtime core”将被覆盖,而“vue”依赖于“@vue/…”,从而导致此类错误 正确的方法是将“declare module'@vue/runtime core'”放在不同的
.d.ts
文件中
您必须将新声明放入main.ts文件中
@岑泰-
似乎仅当declare语句放在ts
文件(而不是.d.ts
文件)中时才起作用。e、 g
src/shim vue.d.ts
声明模块'*.vue'{
从“vue”导入类型{DefineComponent}
常量组件:定义组件
导出默认组件
}
src/main.ts
从“vue”导入{createApp}
从“./App.vue”导入应用程序
createApp(App).mount(“#App”)
//将其放在此处或任何其他“.ts”文件都有效
声明模块“@vue/runtime core”{
导出接口组件CustomProperties{
$goto:有吗
}
}
来自Vue文档
有关这方面的信息也会添加到Vue的文档中
见:(加入)
确保声明文件是TypeScript模块
为了利用模块扩展,您需要确保文件中至少有一个顶级导入
或导出
,即使它只是导出{}
,任何包含顶级导入
或导出
的文件都被视为“模块”。如果类型声明是在模块外部进行的,它将覆盖原始类型,而不是扩充它们