首页 > 解决方案 > (ESLint) Definition for rule 'react/jsx-sort-prop-types' was not found

问题描述

I have just updated my VS 2017 (version 15.8.2). Now when I open any .js file, I see a red squiggly line on the first line of the file... this is the warning message:

Definition for rule 'react/jsx-sort-prop-types' was not found

enter image description here

and when I hover over the squiggly line:

enter image description here

I am not sure why suddenly I am getting so many .js errors?

标签: javascriptvisual-studiovisual-studio-2017eslint

解决方案


ESLint(这是一个 JS 代码分析器)在 VS 2017 中默认启用 - 从版本 15.8开始:

ESLint 支持:此版本中重新实现了 ESLint 支持。因此,Visual Studio 现在将在您编辑时对 JavaScript 文件进行 lint。ESLint 已更新为默认使用 ESLint 4,但如果您的项目有本地安装的 ESLint,它将使用该版本。您可以通过在下图所示位置的“工具/选项”对话框中取消选中“启用 ESLint”设置,轻松地在 VS 中全局禁用 ESLint。

如果你想使用 ESLint 编码指南,那么你需要做的就是重置全局 .eslintrc 文件。在 VS 中转到:

工具 > 选项 > 文本编辑器 > JavaScript/TypeScript > Linting

然后单击重置全局 .eslintrc按钮:

在此处输入图像描述

重置 .eslintrc 将修复您的设置文件(它导入反应插件)

请注意,VS 自带的默认插件是react plugin这并不意味着您使用的是react.js,而是意味着您使用的是 react 编码指南。

另请注意,上述步骤将 react 插件导入设置,并正确设置 ESLint,但您可能仍会遇到很多 .js 样式错误,因为您可能没有遵循 react 编码指南或某些 .js您在项目中包含的库不遵循该指南(如果 .js 文件未在 VS 中打开,则可能不会出现 linting 错误,请打开几个 .js 文件并重新编译以获取 linting 错误)。

例如,我在jquery.validate.js. 您可能不想更改jquery.validate.js代码,请参阅this question on how to configure ESLint to ignore certain .js files。


如果您不想对项目进行所有修改,可以禁用 ESLint,如上图所示。

如果您想使用不同的插件,这是预定义插件的完整列表


推荐阅读