eslint-config-xm

1.2.4 • Public • Published

eslint-config-xm

Install

npm i -D eslint-config-xm

使用

// eslintrc.js 
module.exports = {
    extends: [
        //添加指定对应文件 'eslint-config-xm/react-native' 目前有 react、react-native、vue、typescript、默认标准配置 index 
        'eslint-config-xm'
    ],
    globals: {
        // 这里填入你的项目需要的全局变量
        // 这里值为 false 表示这个全局变量不允许被重新赋值,比如:
        //
        // jQuery: false,
        // $: false
    },
    rules: {
        // 这里填入你的项目需要的个性化配置,比如:
        //
        // // 一个缩进必须用两个空格替代
        // 'indent': [
        //     'error',
        //     4,
        //     {
        //         SwitchCase: 1,
        //         flatTernaryExpressions: true
        //     }
        // ]
    }
};

规则列表

名称 包含规则 解析器
标准规则 [ESLint 规则][] [babel-eslint][]
React ESLint 规则、[eslint-plugin-react][] babel-eslint
Vue ESLint 规则、[eslint-plugin-vue][] [vue-eslint-parser][]
TypeScript ESLint 规则、[@typescript-eslint][] [@typescript-eslint/parser][]
TypeScript React ESLint 规则、@typescript-eslint、eslint-plugin-react @typescript-eslint/parser
TypeScript React ESLint 规则、airbnb、@react-native-community、 prettier/recommended babel-eslint

配置原则

  1. 能够帮助发现代码错误的规则,全部开启
  2. 配置不应该依赖于某个具体项目,而应尽可能的合理
  3. 帮助保持团队的代码风格统一,而不是限制开发体验

配置解读

  • 每一条配置都有一句话注释说明此配置的用途
  • 每个开启的配置都有对应的错误示例和正确示例
  • 每个示例都会在真实的 ESLint 脚本中运行,以保证报错项与配置一一匹配
  • 对于有争议的配置,都在注释中说明了为什么要这么配置的原因
  • 对于能够自动修复的配置,在注释中有标注了 @fixable

Troubleshootings

在 VSCode 中使用

在 VSCode 中,默认 ESLint 并不能识别 .vue.ts.tsx 文件,需要在「文件 => 首选项 => 设置」里做如下配置:

{
    "eslint.validate": [
        "javascript",
        "javascriptreact",
        "vue",
        "typescript",
        "typescriptreact"
    ]
}

VSCode 中的 autoFixOnSave 没有效果

如果需要针对 .vue.ts.tsx 文件开启 ESLint 的 autoFix,则需要配置成:

{
    "eslint.autoFixOnSave": true,
    "eslint.validate": [
        "javascript",
        "javascriptreact",
        {
            "language": "vue",
            "autoFix": true
        },
        {
            "language": "typescript",
            "autoFix": true
        },
        {
            "language": "typescriptreact",
            "autoFix": true
        }
    ]
}

Package Sidebar

Install

npm i eslint-config-xm

Weekly Downloads

6

Version

1.2.4

License

MIT

Unpacked Size

84 kB

Total Files

15

Last publish

Collaborators

  • xuanmiaoshuo