如何在 VSCode 中禁用 TypeScript 警告?

Posted

技术标签:

【中文标题】如何在 VSCode 中禁用 TypeScript 警告?【英文标题】:How to disable TypeScript warnings in VSCode? 【发布时间】:2017-07-26 17:05:04 【问题描述】:

我暂时不使用 TypeScript。只有带有 babel 的 ES6。 我没有在 node_modules 中安装 TypeScript。

每次打开工作区时,我都会收到来自 VSCode 的特定警告。

\node_modules\typescript\lib 没有指向有效的 tsserver 安装。回退到捆绑的 TypeScript 版本。

如何消除此类警告?还是应该换个编辑器让自己冷静一下?

【问题讨论】:

我仍然得到 ts6133 no-unused-vars,即使我有 // eslint-disable-line。 vscode 在保存时删除该行。我有 eslint 和 eslint vscode 扩展。我没有 tslint 扩展。我的用户设置:``` "eslint.codeActionsOnSave.mode": "all", "breadcrumbs.enabled": true, "javascript.validate.enable": false, "typescript.validate.enable": false, "javascript. format.enable”:假,“typescript.format.enable”:假,“javascript.implicitProjectConfig.checkJs”:假,“javascript.suggestionActions.enabled”:假,```请帮忙! 注意:根据您的需要,您可能只想完全禁用内置扩展。请参阅my new answer 了解更多信息。 【参考方案1】:

TypeScript 和 JavaScript 验证可以通过以下两个设置在 VS Code 中关闭:

"typescript.validate.enable": false,
"javascript.validate.enable": false,

【讨论】:

谢谢,在您回答后,我为 TypeScript 更改了此设置和其他设置,但具体警告并未消失。我认为唯一的方法是在本地 node_modules 中安装 TypeScript。我可以做到,即使我不使用它,但我怕以后没有其他警告:-) @JohannesRieken 为什么两者都有?我们不只对禁用 TypeScript 感兴趣吗?您可以通过提及第二条语句的作用来改进您的解决方案,当我们对禁用 TypeScript 感兴趣时,它会声明禁用 JavaScript 验证,这很令人困惑。 出于某种原因,我不得不禁用 javascript 验证来禁用 typescript 验证。这很令人困惑。 对所有和任何项目(甚至是 TypeScript 项目)全局禁用内置 JS+TypeScript 验证是一种耻辱,因为它不能在“每个项目”的基础上关闭或者不够聪明不打字稿验证非打字稿文件。 你把这些值放在哪里?【参考方案2】:

在我的情况下,这是因为存在使用 vscode.typescript-language-features 扩展名的扩展名。

我仍然希望显示 javascript 错误,所以 "javascript.validate.enable": false, 不是一个选项。

通过禁用使用 @builtin 扩展的扩展“VueDX”,它修复了问题,但仍然显示 javascript 语法错误。

您可以通过搜索@builtin typescript 来搜索所有的打字稿扩展

【讨论】:

【参考方案3】:

根据here,您现在可以禁用 VSCode 中的内置扩展。在左侧的扩展选项卡 (Ctrl+Shift+X) 中,搜索 @builtin + JavaScript / TypeScript。然后点击扩展旁边的小齿轮图标,然后点击Disable

我禁用了TypeScript and JavaScript Language Features(有一个JavaScript Language Basics 扩展)和TypeScript Language Basics

【讨论】:

我也试过了,但它也禁用了我不想关闭的 TS 定义文件和导入导航。【参考方案4】:

    打开命令面板:CTRL + SHIFT + P

    打开文件settings.json:

    添加这两行代码:

    "typescript.validate.enable": false,
    "javascript.validate.enable": false,
    

【讨论】:

此错误几乎总是由于在处理 typescript 项目时不小心在用户首选项中设置了 typescript 编译器或 tsdk 库的路径,而不是工作区首选项,然后切换到 javascript 项目。如果阅读此书的任何人遇到此问题,请先尝试 Bernard 的答案,如果它不起作用,则仅禁用验证。您可能想知道您的 javascript 是否有问题。 :)【参考方案5】:

如果您想修改设置,请打开设置选项(在我写这篇文章时有一个新的设置编辑器)并搜索您要修改的设置。我试图更改打字稿验证,但由于文档是只读的,因此不允许我这样做。如果您将鼠标悬停在设置上,您会在设置左侧看到一支笔。如果您右键单击笔,它将为您提供真或假选项,至于我的目标是"typescript.validate.enable"。我将其更改为 false,然后 VS 代码将代码复制到屏幕右侧,并带有新值。总之,左边是settings.json文件。在右侧,您有 user-settings.json。您只能修改用户设置,并且用户设置可以覆盖主 settings.json 文件中的任何设置。 -Kf

【讨论】:

【参考方案6】:

我遇到了类似的问题。我的用户设置中 typescript.tsdk 的设置不正确:

"typescript.tsdk": null

要修复它,您可以将位置设置为有效位置:

"typescript.tsdk": "/usr/local/lib/node_modules/typescript/lib",

如果不使用 Typescript,或者只是从您的设置中删除该行。

如果您需要更多详细信息,我发现VSCode docs 非常简洁易懂。

【讨论】:

这是正确答案。太糟糕了,一群人会看到接受的答案并关闭他们的验证。

以上是关于如何在 VSCode 中禁用 TypeScript 警告?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VS Code / TypeScript 中禁用多余的自动导入建议?

如何防止 Vetur 和 TypeScript 在 VSCode 中同时显示打字稿警告?

如何在 Vscode 中的 Typescript 中等待后调试代码?

如何强制 VSCode 使用本地安装的 TypeScript

如何在 VSCode、TypeScript 中查看悬停时的完整类型定义?

如何在 vscode 中禁用“运行|调试”行?