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>
相关推荐
之歆8 小时前
DAY08_CSS浮动与行内块布局实战指南(下)
前端·css
yqcoder8 小时前
CSS Position 全解析:5 种定位模式详解
前端·css
Rhi6379 小时前
从零搭建项目:React 19 + Vite 8 + Tailwind CSS v4 实战配置
前端
竹林8189 小时前
用Viem替代ethers.js:从一次签名失败到完整迁移的实战记录
前端·javascript
之歆9 小时前
DAY08_CSS浮动与行内块布局实战指南(上)
前端·css
light blue bird9 小时前
主子端台二分法任务汇总组件
前端·数据库·.net·桌面端winform
jeffwang10 小时前
我做了个让 AI 看屏幕跑测试的工具,因为 Playwright 测不了我的 Flutter Web
前端
HSunR11 小时前
dify 搭建ai作业批改流
开发语言·前端·javascript
代码不加糖11 小时前
2026 跨境电商独立站实战:从 0 到 1 搭建高转化 SaaS 商城(附源码)
开发语言·前端·javascript
亲亲小宝宝鸭11 小时前
拖一拖控件,拖出个问卷(低代码平台)
前端·低代码