vite+vue+ts项目中报错解决方案

1. vite+vue3+ts项目中提示无法找到模块

一.首先产生这个错误是:无法找到模块XXX,并且提示'XXX' is declared but its value is never read

二. 产生这个问题的原因是我们使用了ts语法,他只能识别.ts文件,并不能识别.vue文件,所以在引入组件的时候报错了。

解决方案在在项目的根目录下创建一个vite-env.d.ts文件,文件名自定义即可,后缀必须是.d.ts

在刚刚创建的文件中输入一下代码

declare module '*.vue' {

import { ComponentOptions } from 'vue'

const componentOptions: ComponentOptions

export default componentOptions

}

2. TS 报错 Could not find a declaration file for module 'XX' -- 找不到模块的声明文件 xx

解决方案在vite-env.d.ts文件声明:

declare module 'xx'

3. 在ts环境下报Cannot find module 'pinna' or its corresponding type declarations

解决方案安装:npm install -D @types/node

如果问题还没有解决,就打开tsconfig.json文件,确保types中含有"node"。

{

"compilerOptions": {

"types": [

"node"

]

},

}

++++最重要,重启VSCODE,重新打开项目++++

4. TS 报错 Cannot find module 'vue'. Did you mean to set the 'moduleResolution' option to 'node', or to add ali

->翻译过来是找不到 vue模块 需要将 moduleResolution设置成node

解决方案在找到 tsconfig.json 文件

"compilerOptions": {

"moduleResolution": "node"

},

}

5. ts报Module '"xx.vue"' has no default export == 报错信息,提示组件没有到导出

原因:vetur是一个vscode插件,用于为.vue单文件组件提供代码高亮以及语法支持。那既然官方推荐 volar,简单的说volar是vetur的升级版本,提供了更好的功能并有更好的TS支持。

解决方法:选择卸载vetur,安装volar插件,最后,记得重启下VS Code。

6. vite + ts 找不到模块@/xxxx 或其相应的类型声明

前提: 在vite.config.ts里面有配置相关的@/路径标签

解决办法:在tsconfig.json 文件配置如下:

"compilerOptions": {

"baseUrl": "./",

"paths": {

"@/*":["./src/*"]

}

},

7. 在vite.config.ts里面声明node模块path,报找不到模块"path"或其相应的类型声明

原因:nodejs环境不支持typescript,就给它一个能够找到对应内容的方法或插件

解决方法:pnpm i @types/node -D

相关推荐
xiaoqi92226 分钟前
React Native鸿蒙跨平台如何实现分类页面组件通过searchQuery状态变量管理搜索输入,实现了分类的实时过滤功能
javascript·react native·react.js·ecmascript·harmonyos
打小就很皮...39 分钟前
Tesseract.js OCR 中文识别
前端·react.js·ocr
qq_177767371 小时前
React Native鸿蒙跨平台实现应用介绍页,实现了应用信息卡片展示、特色功能网格布局、权限/联系信息陈列、评分展示、模态框详情交互等通用场景
javascript·react native·react.js·ecmascript·交互·harmonyos
2603_949462101 小时前
Flutter for OpenHarmony社团管理App实战:预算管理实现
android·javascript·flutter
wuhen_n1 小时前
JavaScript内存管理与执行上下文
前端·javascript
Hi_kenyon1 小时前
理解vue中的ref
前端·javascript·vue.js
jin1233222 小时前
基于React Native鸿蒙跨平台地址管理是许多电商、外卖、物流等应用的重要功能模块,实现了地址的添加、编辑、删除和设置默认等功能
javascript·react native·react.js·ecmascript·harmonyos
2501_920931703 小时前
React Native鸿蒙跨平台医疗健康类的血压记录,包括收缩压、舒张压、心率、日期、时间、备注和状态
javascript·react native·react.js·ecmascript·harmonyos
落霞的思绪3 小时前
配置React和React-dom为CDN引入
前端·react.js·前端框架
Hacker_Z&Q3 小时前
CSS 笔记2 (属性)
前端·css·笔记