使用ts开发时如果要使用第三方js库的同时还想利用ts诸如类型检查等特性就需要声明文件,类似
xx.d.ts。
$ npm i @types/xxx
@vue/cli项目中对已存在模块进行补充
// main.tsimport axios from 'axios';Vue.prototype.$axios = axios;// shims-vue.d.tsdeclare module '*.vue' {import Vue from 'vue'export default Vue;}// vue.d.tsimport VueRouter, { Route } from 'vue-router'import { Store } from 'vuex'import { AxiosInstance } from "axios";// 对已存在模块进行补充declare module "vue/types/vue" {interface Vue {$router: VueRouter;$route: Route;$store: Store<any>;// 利用模块补充$axios属性到Vue实例,从而在组件里面直接用$axios: AxiosInstance;}}
