相信很多人在创建vue3+typescript+vite的项目的时候,在tsconfig.vitest.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. 虽然不解决该问题不会影响项目运行,但是看着就会很难受。
先上解决方法
在 compilerOptions 中添加配置项 "ignoreDeprecations": "5.0" ,并且将importsNotUsedAsValues 改为verbatimModuleSyntax
原因:
这个报错是因为 TypeScript 4.9 版本中引入了一个新的编译选项importsNotUsedAsValues,用于检查导入语句是否被使用。但是这个选项在 TypeScript 4.9 版本中只是一个实验性的特性,它的行为可能会发生变化或被移除。因此,在 TypeScript 4.9 版本中,这个选项默认是开启的,但是在 TypeScript 5.0 版本中,它已经被标记为过时,并且在 TypeScript 5.5 版本中将被移除。
为什么用 "verbatimModuleSyntax" 选项来代替"importsNotUsedAsValues" 选项
verbatimModuleSyntax 选项是用来指定是否需要保留导入语句,即使这些语句并没有被使用, 如果设置为 true,TypeScript 将不会检查导入语句是否被使用,也不会将它们编译到输出文件中。
(第一次发帖,有什么不对的地方希望大佬们多多指正)