跳至內容

Oxlint 配置文件

此設定與 ESLint v8 的設定架構 (eslintrc.json) 對齊。

用法:oxlint -c oxlintrc.json --import-plugin

注意

僅支援 .json 格式。您可以在設定檔中使用註解。

範例

.oxlintrc.json

json
{
  "$schema": "./node_modules/oxlint/configuration_schema.json",
  "plugins": ["import", "unicorn"],
  "env": {
    "browser": true
  },
  "globals": {
    "foo": "readonly"
  },
  "settings": {},
  "rules": {
    "eqeqeq": "warn",
    "import/no-cycle": "error"
  }
}

categories

類型:object

一次設定整個規則類別。

以此方式啟用或停用的規則將被 rules 欄位中的個別規則覆寫。

範例

json
{
  "$schema": "./node_modules/oxlint/configuration_schema.json",
  "categories": {
    "correctness": "warn"
  },
  "rules": {
    "eslint/no-unused-vars": "error"
  }
}

categories.correctness

categories.nursery

categories.pedantic

categories.perf

categories.restriction

categories.style

categories.suspicious

env

類型:Record<string, boolean>

預先定義全域變數。

環境指定預先定義的全域變數。請參閱 ESLint 的環境清單,以了解可用的環境以及每個環境提供的內容。

globals

類型:Record<string, string>

新增或移除全域變數。

對於每個全域變數,將對應的值設定為 "writable" 以允許覆寫變數,或設定為 "readonly" 以禁止覆寫。

可以將全域變數的值設定為 "off" 來停用它們。例如,在大多數 Es2015 全域變數可用的環境中,但 Promise 不可用,您可能會使用此設定

json
{
  "$schema": "./node_modules/oxlint/configuration_schema.json",
  "env": {
    "es6": true
  },
  "globals": {
    "Promise": "off"
  }
}

您也可以使用 "readable"false 來表示 "readonly",以及使用 "writeable"true 來表示 "writable"

plugins

類型:string[]

預設值:["react", "unicorn", "typescript", "oxc"]

rules

類型:object

請參閱 Oxlint 規則

settings

類型:object

外掛的共用設定

settings.jsdoc

類型:object

settings.jsdoc.augmentsExtendsReplacesDocs

類型:boolean

預設值:false

僅適用於 require-(yields|returns|description|example|param|throws) 規則

settings.jsdoc.exemptDestructuredRootsFromChecks

類型:boolean

預設值:false

僅適用於 require-param-typerequire-param-description 規則

settings.jsdoc.ignoreInternal

類型:boolean

預設值:false

適用於所有規則,但不適用於 empty-tags 規則

settings.jsdoc.ignorePrivate

類型:boolean

預設值:false

適用於所有規則,但不適用於 check-accessempty-tags 規則

settings.jsdoc.ignoreReplacesDocs

類型:boolean

預設值:true

僅適用於 require-(yields|returns|description|example|param|throws) 規則

settings.jsdoc.implementsReplacesDocs

類型:boolean

預設值:false

僅適用於 require-(yields|returns|description|example|param|throws) 規則

settings.jsdoc.overrideReplacesDocs

類型:boolean

預設值:true

僅適用於 require-(yields|returns|description|example|param|throws) 規則

settings.jsdoc.tagNamePreference

類型:object

預設值:{}

settings.jsx-a11y

類型:object

settings.jsx-a11y.components

類型:Record<string, string>

預設值:{}

settings.jsx-a11y.polymorphicPropName

類型:[ string, null ]

settings.next

類型:object

settings.next.rootDir

settings.react

類型:object

settings.react.formComponents

類型:array

預設值:[]

settings.react.formComponents[n]

settings.react.linkComponents

類型:array

預設值:[]

settings.react.linkComponents[n]

在 MIT 授權下發佈。