TS 识别Vue全局方法
2019-06-17 本文已影响0人
钱英俊真英俊
Vue 添加全局方法之后直接调用会造成TS报错,需要配置声明文件
shims-vue.d.ts
文件配置如下
import Vue from 'vue'
declare module '*.vue' {
export default Vue // 识别.vue文件
}
declare module 'vue/types/vue' {
interface Vue {
$toTop: any // 全局方法
}
}
有时候会有.vue
文件无法识别的情况,那是因为在这个文件有声明了别的接口,需要把接口转为global
,例如
import Vue from 'vue'
declare module '*.vue' {
export default Vue
}
declare module 'vue/types/vue' {
interface Vue {
$toTop : any
}
}
declare global {
interface module {
title : string
}
interface meta {
moduleIndex ?: string
module ?: module
title ?: string
show ?: boolean
}
interface route {
path : string
name: string
component: any
meta ?: meta
alias ?: string
}
interface variable {
[propName: string]: any
}
}
这样的写法