内置插件
Oxlint 包含了许多流行 ESLint 插件规则集的内置实现。大多数 recommended 配置中的规则都已实现,因此无需额外设置即可获得有用的结果。
Oxlint 还支持使用 ESLint 兼容 API 编写的 JavaScript 插件。详见 JS 插件。
Oxlint 中插件的含义
插件是一组命名规则的集合。启用插件后,其规则将可用,而类别标志(category flags)则控制哪些规则被启用以及其严重程度。
如果您正在从 ESLint 迁移,这些插件对应您已经熟悉的生态系统,例如 import、react、jsx-a11y、jest、unicorn 等。
启用插件
强烈建议使用配置文件来启用插件,因为这样可以大大简化项目中与其他开发人员共享和管理的难度。
在配置文件中启用
您也可以在 .oxlintrc.json 文件中通过 plugins 字段启用插件:
{
"plugins": ["import"]
}设置 plugins 会覆盖默认插件集合。该列表应包含您希望启用的所有插件。
使用 CLI 启用
您还可以使用 --<插件名>-plugin CLI 标志来启用插件。
例如,启用 import 插件:
oxlint --import-plugin启用后,类别标志决定哪些规则被开启。
例如,将 import 插件在 correctness 类别中作为错误启用,在 suspicious 类别中作为警告启用:
oxlint --import-plugin -D correctness -W suspiciouscorrectness 类别的规则默认已启用。
提示:运行 oxlint --help 可查看完整的插件标志列表。
禁用默认插件
在配置文件中禁用默认插件
要在配置文件中禁用所有默认插件,请将 plugins 设置为空数组:
{
"plugins": []
}这将禁用所有默认插件,仅使用基础规则集。
使用 CLI 禁用默认插件
多个插件默认是启用的。您可以使用 --disable-<插件名>-plugin 来禁用某个默认插件。
例如,禁用 unicorn:
oxlint --disable-unicorn-plugin只有默认插件支持被禁用。非默认插件只需省略即可。
支持的插件
下表列出了内置插件及其来源。
| 插件名称 | 默认启用 | 来源 |
|---|---|---|
eslint | 是 | ESLint 核心规则 |
typescript | 是 | typescript-eslint(即 @typescript-eslint/plugin)提供的 TypeScript 规则。类型感知规则可在使用 类型感知模式 的 alpha 版本中使用。 |
unicorn | 是 | eslint-plugin-unicorn |
react | 否 | eslint-plugin-react 和 eslint-plugin-react-hooks |
react-perf | 否 | eslint-plugin-react-perf |
nextjs | 否 | @next/eslint-plugin-next |
oxc | 是 | Oxc 特有的规则以及从 deepscan 移植的部分规则 |
import | 否 | eslint-plugin-import(也等同于 eslint-plugin-import-x) |
jsdoc | 否 | eslint-plugin-jsdoc |
jsx-a11y | 否 | eslint-plugin-jsx-a11y |
node | 否 | eslint-plugin-n |
promise | 否 | eslint-plugin-promise |
jest | 否 | eslint-plugin-jest |
vitest | 否 | @vitest/eslint-plugin 即 eslint-plugin-vitest |
vue | 否 | 适用于 script 标签的 eslint-plugin-vue 规则 |
关于规则覆盖率的当前状态,请参阅 linter 产品规划问题。
添加新插件
Oxlint 专注于通过内置插件和与 ESLint 兼容的 JavaScript 插件来支持生态。我们鼓励为现有内置插件 添加规则。
如果您认为某个规则集应作为内置插件实现,请先打开 GitHub 讨论。
