vue3.0全局挂载的方法ts报错,找不到名称

新手上路,请多包涵

app.config.globalProperties.$filters全局挂载过滤器方法,模板中使用ts报错找不到名称(找不到名称“$filters”),按照网上的定义全局声明方法没有解决。

shims-vue.d.ts中添加如下声明无效,main.ts中添加报错

declare module 'vue/types/vue' {
  interface Vue {
    $filters: string;
  }
}

扩大中的模块名无效,找不到模块“vue/types/vue”。
ts初学者,求教。

阅读 10.4k
1 个回答
✓ 已被采纳新手上路,请多包涵

已解决,在main.ts中添加类型补充说明

// 对vue进行类型补充说明
declare module '@vue/runtime-core' {
  interface ComponentCustomProperties {
    $filters: any
  }
}

const app = createApp(App)
app.config.globalProperties.$filters = filters
app.use(store).use(router).mount('#app')
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Microsoft
子站问答
访问
宣传栏