在用vscode开发uniapp项目时会安装 @uni-helper/uni-app-types 这么一个依赖,安装好后在 tsconfig.json文件中进行配置:确保 compilerOptions.types 中含有 @dcloudio/types 和 @uni-helper/uni-app-types,且 include 包含了对应的 vue 文件(官方原话)。
理解就是在这一块配置好:
之后遇到的问题是在配置 “vueCompilerOptions"时遇到像这种不允许属性:
或者是像这种 .vue文件中飘红一大片的:
就需要注意在配置"vueCompilerOptions"时尽量参考官网,因为很多是实验属性,更新比较多 1。24年之前只需要将"vueCompilerOptions” 配置其中的"nativeTags"属性。24年之后"nativeTags"也变为不允许属性
原因时在node_modules文件夹中的@uni-helper/uni-app-types/volar-plugin文件依赖中已经配置好了nativeTags。
目前(24年5月后)因为vscode插件的更新 插件Vue Language Features (Volar)早已被废弃Volar版本随着使用最新的vue插件 Vue-Official 版本已经达到了v2.0.19,因此配置"vueCompilerOptions"时就要写官网最新的版本
vscode中的代码(tsconfig.json):
{
"extends": "@vue/tsconfig/tsconfig.json",
"compilerOptions": {
"sourceMap": true,
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"]
},
"lib": ["esnext", "dom"],
"types": [
"@dcloudio/types",
"@uni-helper/uni-app-types"
],
"ignoreDeprecations": "5.0"
},
"vueCompilerOptions": {
// experimentalRuntimeMode 已废弃,现调整为 nativeTags,请升级 Volar 插件至最新版本
// "nativeTags": ["block", "component", "template", "slot"]
"plugins": ["@uni-helper/uni-app-types/volar-plugin"]
},
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"]
}
参考文档:
1、安装@uni-helper/uni-app-types之后模板代码报错
2、解决tsconfig.json文件中最外层大括号红线报错Option ‘importsNotUsedAsValues’ is deprecated and will stop functioning in TypeScript 5.5. Specify compilerOption ‘“ignoreDeprecations”: “5.0”’ to silence this error. Use ‘verbatimModuleSyntax’ instead.ts
3、开启/关闭VSCode代码提示(补全)
@uni-helper/uni-app-types官网:https://uni-helper.js.org/uni-app-types ↩︎