Skip to content

zjutjh/eslint-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@zjutjh/eslint-config

npm-version

zjutjh 的 ESLint 配置,适用于 JS, TS, Vue3 项目。

使用方式

Important

ESLint 版本需要 ^9.0.0 以上,Node 版本需要 ^18.18.0 以上

# 确保你已经安装了 eslint
$ pnpm add -D eslint

$ pnpm add -D @zjutjh/eslint-config
// @filename eslint.config.mjs
import zjutjh from "@zjutjh/eslint-config";

export default zjutjh();
// 添加定制化配置
export default [
  ...await zjutjh(),
  {
    name: "local/ignores",
    ignores: [
      "dist"
    ]
  }
]

Tip

在项目中调整配置时,如果对最终计算出的的配置有疑问,可以使用 @eslint/config-inspector 来调试配置。

// 覆盖原有配置
export default [
  ...await zjutjh({
    overrides: {
      vue: {
        "vue/multi-word-component-names": "off"
      }
    }
  })
]

Warning

不要在数组内添加新的配置来修改原有配置,请使用函数提供的 overrides 属性来修改。

在一个配置对象内,一条规则的生效需要声明出对应的插件。对于用户而言,在工厂函数 zjutjh() 之外声明规则,无法直接获知一条规则对应的插件是什么。 所以函数开放了 overrides 入口来透传配置到内部的配置对象中。自定义的配置被带到合适插件的生效范围之下,并结合 JS 声明同名的对象属性来支持配置的覆盖。

package.json 中添加如下命令。

{
  "scripts": {
    "lint": "eslint"
  }
}

在项目中运行即可。如果有提示按照依赖,请按照提示出的包名安装(应该安装到 devDependencies)。

$ npm run lint

开发指南

推荐使用官方的 @eslint/config-inspector 来可视化调试配置。

$ npm run dev

src/configs 目录下,分出了每个语言/依赖的配置,如果需要对现有配置修改或删除,找到对应的条目即可。

如果需要添加对一门新的语言/依赖的支持,也是在 src/configs 目录下添加新文件。注意给每个配置对象加上 name 属性,方便在 inspector 中检索。