ReSharper 2025.2 Help

使用 Web linter 验证代码

ReSharper 集成了 Web 代码质量工具(也称为 linter)——JSLint、ESLint 和 TSLint,帮助您检测并修复代码中的更多问题。

Linters 被设计为命令行工具,因此通常每次您想要验证代码时,都需要打开控制台,运行命令行,然后查看其文本输出。

使用 ReSharper 则不同。 当在 ReSharper 设置中安装并启用了 linter 时,linter 的代码规则将与 ReSharper 自身的 代码检查 一起使用,所有由 linter 检测到的代码问题都会在编辑器中 设计时 高亮显示。

下表显示了不同 linter 在不同上下文中的支持情况。

JavaScript

HTML 中的 JS 代码

ASPX 中的 JS 代码

TypeScript

JSON

JSLint

支持

支持

支持

不支持

支持

ESLint

支持

支持

支持

支持

不支持

TSLint

支持

支持

支持

支持

不支持

在编辑器中启用 Web linter 验证

  1. 安装 Node.js 解释器。 最简单的方法是安装 Node.js Tools for Visual Studio

  2. 在大多数情况下,ReSharper 会自动找到 Node.js 解释器。 If it is installed in an uncommon location, specify it on the 工具 | Node.js page of ReSharper 选项 Alt+R, O

  3. 在您的项目中安装所需的 linter 包。

  4. 打开 工具 | Web Linters 下的所需 linter 选项页面并启用 linter。

  5. 如果您的项目中有 node_modules 文件夹,ReSharper 会自动找到 linter 包。 但您也可以指定自定义的 linter 文件夹。

  6. 如果您使用 ESLint 或 TSLint,ReSharper 将从 linter 配置文件中获取所有规则和设置。 默认情况下,这些文件会被自动找到,但您也可以指定自定义配置文件。

    如果启用了自动搜索但 linter 无法工作,请确保配置文件位于当前目录和/或其父目录中,或位于用户主目录中:

    • 对于 ESLint: .eslintrc.* 文件或 eslintConfig 字段在 package.json 中。

    • 对于 TSLint: tslint.json tslint.yaml tslint.yml

  7. 您还可以传递任何用空格分隔的额外命令行选项(请参阅 JSLintESLintTSLint 的命令行选项参考)。

    请注意,某些影响 linter 执行方式的选项无法应用。 例如, --fix 将被忽略,因为 ReSharper 提供了自己的方式来应用 linter 修复。

  8. 如果您使用 TSLint,ReSharper 将默认在 TypeScript 和 JavaScript 代码中启用 linter。 要仅在 TypeScript 代码中使用它,请清除相应的复选框。

当设置好 linter 支持后,您将在编辑器中看到由 linter 检测到的代码问题,根据相应规则的严重级别(错误级别)进行高亮显示:

ReSharper:突出显示由 ESLint 检测到的代码问题

如果 linter 为某个规则提供了修复,您可以直接从 Alt+Enter 菜单中应用它:

ReSharper:修复由 ESLint 检测到的代码问题

您还可以从 Alt+Enter 菜单中选择 检查: [name] | 配置检查严重性 | [Severity level]——这将直接在 linter 配置文件中写入相应规则的新严重级别(错误级别)。

此功能在以下语言和技术中 受支持

语言:C#

语言:VB.NET

语言:C++

语言:ASP.NET

语言:Razor

语言:XAML

语言:Resx

语言:构建脚本

语言:SQL

功能在 C# 中不可用

此功能在 Visual Basic 中不可用

功能在 C++ 中不可用

此功能在 ASP.NET 中可用

此功能在 Razor 中不可用

此功能在 XAML 中不可用

此功能在资源文件中不可用

此功能在构建脚本文件中不可用

此功能在 SQL/NoSQL 文件和注入中不可用

最后修改日期: 2025年 9月 27日