Vue3+TS中的shims-vue.d.ts文件的作用及代码说明

在Vue3中安装TypeScript后,会出现一个shims-vue.d.ts文件,那么它是干什么的,起着什么作用呢?

shims-vue.d.ts是为了typescript做的适配定义文件,因为.vue文件不是一个常规的文件类型,TypeScript是不能理解vue文件是干嘛的,加这一段是是告诉 TypeScript,vue文件是这种类型的。没有这个文件,会发现 import 导入的所有.vue类型的文件都会报错。

/**

  • shims-vue.d.ts的作用
  • 为了 typescript 做的适配定义文件,因为.vue 文件不是一个常规的文件类型,ts 是不能理解 vue 文件是干嘛的,
  • 加这一段是是告诉 ts,vue 文件是这种类型的。
  • 可以把这一段删除,会发现 import 的所有 vue 类型的文件都会报错。
    */
cpp 复制代码
declare module '*.vue' { //declare声明宣告, 声明一个ambient module(即:没有内部实现的 module声明)
  import Vue from 'vue'
  export default Vue
}

declare module 'vue-echarts'  // 引入vue-echarts
javascript 复制代码
<script lang="ts">
    /* eslint-disable @typescript-eslint/camelcase */
    import { Vue, Component, Watch } from 'vue-property-decorator'
    import ECharts from 'vue-echarts' //如果报错,按上面的方法在shims-vue.d.ts文件中引入即可
    import 'echarts/lib/chart/line'
    import 'echarts/lib/chart/pie'
    import 'echarts/lib/component/tooltip'
</script>
相关推荐
weibkreuz1 小时前
收集表单数据@10
开发语言·前端·javascript
hboot2 小时前
别再被 TS 类型冲突折磨了!一文搞懂类型合并规则
前端·typescript
在西安放羊的牛油果2 小时前
浅谈 import.meta.env 和 process.env 的区别
前端·vue.js·node.js
鹏北海2 小时前
从弹窗变胖到 npm 依赖管理:一次完整的问题排查记录
前端·npm·node.js
布列瑟农的星空2 小时前
js中的using声明
前端
薛定谔的猫22 小时前
Cursor 系列(2):使用心得
前端·ai编程·cursor
用户904706683572 小时前
后端问前端:我的接口请求花了多少秒?为啥那么慢,是你慢还是我慢?
前端
深念Y2 小时前
仿B站项目 前端 4 首页 顶层导航栏
前端·vue·ai编程·导航栏·bilibili·ai开发
dragonZhang2 小时前
基于 Agent Skills 的 UI 重构实践:从 Demo 到主题化界面的升级之路
前端·ai编程·claude
王林不想说话2 小时前
提升工作效率的Utils
前端·javascript·typescript