ChatGPT解决这个技术问题 Extra ChatGPT

如何在 Visual Studio 2017 中禁用 JavaScript 构建错误?

我刚刚将 Visual Studio 2017 从 RC 更新到 final。我没有收到以下错误,但最近我收到了此错误。在构建项目时,我收到以下错误,它会阻止 Web 项目启动:

Severity    Code    Description Project File    Line    Suppression State
Error   eqeqeq  (ESLint) Expected '===' and instead saw '=='.   VistaBest.Shop.Web  C:\***\Request.js   21

https://i.stack.imgur.com/y7KLd.png

如何在 Visual Studio 2017 中禁用 JavaScript 构建错误?

这不是我的代码问题,我想在我的 JavaScript 代码中使用 '==' 而不是 '==='
JavaScript 错误不应阻止在 Visual Studio 中构建 MVC 项目
共享您的代码,或禁用 javascript 错误消息 - 请阅读:stackoverflow.com/questions/2125455/…
@Koby Douek:这不是我的代码问题,我不想在 Visual Studio 中为 JavaScript 文件构建错误
我对禁用此特定错误特别感兴趣。 == 与 '===' 一样是有效的比较运算符。对我来说,它不会阻止我构建,它只会在我的服务器代码中出现另一个错误时弄乱错误列表。

M
Mohammad Dayyan

我想,找到解决方案:

打开工具 > 选项导航到文本编辑器 > JavaScript/TypeScript > EsLint(在 VS2017 15.8 中它是 Linting 而不是 EsLint)将 Enable ESLint 设置为 False

https://i.stack.imgur.com/hoH70.png

https://i.stack.imgur.com/qOxtH.jpg


在 VS2017 中为我工作
快速提示:屏幕截图左上角的文本框可用于轻松搜索任何设置/选项!
这在 15.8.0 中的工作方式并不完全相同 - 它隐藏在 Linting>General 下搜索 eslint 仍会显示它,但它会被标记为 linting。请参阅下面的@Brad 答案。
此功能在更新到 VS 2017 15.8.1 后自动开始工作。我不得不再次手动将其关闭。
谢谢!那让我很生气。对于版本 15.8.5 现在只是一个复选框。
C
Community

在 Visual Studio 2017 (v 15.8.0) 中:

选项 1:选项 > JS 错误

打开工具 > 选项导航到文本编辑器 > JavaScript/TypeScript > 代码验证将启用 JavaScript 错误设置为 false,或者将启用 JavaScript 错误设置为 true 并将错误显示为警告设置为 true

我需要重新启动 Visual Studio 才能使其生效。

https://i.stack.imgur.com/4NJh0.png

选项 2:选项 > Linting

下面还有另一个选项可让您编辑全局 linting 设置:

https://i.stack.imgur.com/okATP.png

选项 3:.eslint 文件

您还可以在项目的根目录中创建一个名为 .eslintrc 的文件。

选项 4:文件中的 ESLint 命令

See @user9153924's answer

资源

ESLint 文件语法

ESLint 规则


R
Rafael dos Santos

我尝试了 Mohammad 的解决方案,但没有奏效。我设法做到以下几点:

右键单击您的 web .csproj 文件在第一个 上添加以下条目:true


我想你错过了几个步骤。您的意思是右键单击您的 web .csproj,卸载项目,再次右键单击它,编辑?
u
user9153924

/*eslint eqeqeq: ["error", "smart"]*/ 添加到 Javascript 代码的第一行以消除错误。 https://eslint.org/docs/rules/eqeqeq

遵循 Mohammad 的解决方案将关闭 ESLint 以进行语法检查。这适用于 VS2015,应该适用于更高版本。


完美且不会将婴儿与洗澡水一起倒出
谢谢!这行得通,但我很确定“错误”应该是“关闭”或 0(零,没有引号)。由于 URL 参考,我还得到了一个 package.json 文件。
N
Nilachal Sethi

对于 Visual Studio 2019。

https://i.stack.imgur.com/Bvfoo.jpg

打开工具 > 选项导航到文本编辑器 > JavaScript/TypeScript => Linting > 常规。

然后取消选中 ESLint 复选框。请参考下面的图片。

https://i.stack.imgur.com/N85Lr.jpg


c
cjl

我只需要更改“eqeqeq”规则行为以包含“smart”:

编辑在其他答案中提到的用户根文件夹中找到的 .eslintrc 文件。

通过添加智能规则对规则部分进行更改

    "rules": {

    "eqeqeq": [2, "smart"],

复制自网络文章:此选项强制使用 === 和 !==,但以下情况除外:

比较两个文字值 评估 typeof 的值 比较 null

我在以下位置找到了详细信息:https://eslint.org/docs/2.0.0/rules/eqeqeq


谢谢!我必须关闭并重新打开 Visual Studio 才能使更改生效。此外,添加“智能”参数似乎并没有在所有情况下都清除错误,但是完全删除规则就可以了。
S
SilentCoder

我尝试了 Mohammad 的解决方案,但没有运气,我按照 Rafeel 的回答而不是添加他建议的代码示例,而是从 web .csproj 中删除了下面的代码,最后我能够构建和运行我的项目。在同一个文件中有两个地方应该删除它。不过,我不知道删除的代码将如何影响我的解决方案。

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />

希望这也能帮助某人拯救这一天..!!!