版本

特性标志

ESLint 将实验性和未来可能产生破坏性更改的功能隐藏在特性标志后面,以便用户可以选择他们想要的行为。在以下情况下使用标志

  1. 当一个功能处于实验阶段,尚未准备好向所有人启用时。
  2. 当一个功能是一个破坏性更改,将在下一个主要版本中正式合并,但用户可以在下一个主要版本之前选择使用该行为。

标志前缀

标志的前缀指示其状态

  • unstable_ 表示该功能处于实验阶段,并且在功能稳定之前实现可能会发生变化。这是一个“自行承担风险”的功能。
  • v##_ 表示该功能已稳定,将在下一个主要版本中可用。例如,v10_some_feature 表示这是一个破坏性更改,将在 ESLint v10.0.0 中正式发布。这些标志在每个主要版本中都会被移除。

如果一个功能是非破坏性更改,它可以在没有主要版本的情况下从不稳定状态变为稳定状态。

活动标志

以下标志目前可在 ESLint 中使用。

标志 描述
test_only仅用于测试。
unstable_config_lookup_from_file从正在检查的文件中查找 eslint.config.js。
unstable_ts_config启用 TypeScript 配置文件。

非活动标志

以下标志曾被使用,但现在不再活跃。

标志 描述
test_only_old仅用于测试。

如何使用特性标志

因为特性标志是严格选择加入的,所以您需要手动启用您想要的标志。

使用 CLI 启用特性标志

在命令行上,您可以使用 --flag 选项指定特性标志。您可以指定任意数量的标志

npx eslint --flag flag_one --flag flag_two file.js

使用 API 启用特性标志

当使用 API 时,您可以将 flags 数组传递给 ESLintLinter

const { ESLint, Linter } = require("eslint");

const eslint = new ESLint({
    flags: ["flag_one", "flag_two"]
});

const linter = new Linter({
    flags: ["flag_one", "flag_two"]
});

在 VS Code 中启用特性标志

要在编辑器的 VS Code ESLint 扩展中启用标志,请在 settings.json 文件中的 eslint.options 设置中指定您想要的标志

{
  "eslint.options": { "flags": ["flag_one", "flag_two"] }
}

要在 VS Code ESLint 扩展的 lint 任务中启用标志,请指定 eslint.lintTask.options 设置

{
  "eslint.lintTask.options": "--flag flag_one --flag flag_two ."
}
更改语言