如何修复“标记‘importsNotUsedAsValues’已弃用,并将在 TypeScript 5.5 中停止运行。”?

Don*_*ius 20 typescript tsconfig

有谁知道如何修复这个 tsconfig 错误?

标记“importsNotUsedAsValues”已弃用,并将在 TypeScript 5.5 中停止运行。指定 'ignoreDeprecations: "5.0"' 以消除此错误。请改用“verbatimModuleSyntax”。

我使用 vscode 并使用 Vite 创建了新的 Vue 项目实例

不确定我是否应该消除此错误,或者是否有关于如何编辑 tsconfig 的特定解决方案?

小智 11

根据verbatimModuleSyntax而不是

"importsNotUsedAsValues": "error"
Run Code Online (Sandbox Code Playgroud)

你应该使用

"verbatimModuleSyntax": true
Run Code Online (Sandbox Code Playgroud)

请参阅拉取请求中的详细信息。

原来是在这里回答的。


小智 7

tsconfig.json您可以通过在项目中添加以下命令来隐藏此警告:

{
  "compilerOptions": {
    "ignoreDeprecations": "5.0",
    ....
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 也许这只是我个人的看法,但我真的反对消除弃用警告。我更愿意有真正解决问题的确切解决方案,或者至少了解问题是什么以及它源于何处。 (53认同)
  • 我的代码中什至没有“importsNotUsedAsValues”,但我仍然收到此错误,因此我宁愿不将其静音,直到我知道为什么会抛出它。 (8认同)

小智 6

遇到了同样的问题,使用 GitHub 问题中的解决方法修复了该问题:

如果您正在使用@vue/tsconfig/tsconfig.web.json或类似的,您可以重置那些在启用 verbatimModuleSyntax 时出错的属性

{
  "extends": "@vue/tsconfig/tsconfig.web.json",
  "compilerOptions": {
    // workaround for https://github.com/vuejs/tsconfig/issues/6
    "preserveValueImports": false,
    "importsNotUsedAsValues": "remove",
    "verbatimModuleSyntax": true,
    // end workaround
  },
}
Run Code Online (Sandbox Code Playgroud)

我看到你用了@vue/tsconfig/tsconfig.web.json。