ESLint 使用方法

一、全局安装

npm install -g eslint

二、生成配置文件

  在项目根目录执行init,生成.eslintrc文件。在init时,要求根目录存在package.json。当然也可以直接复制个现成的.eslintrc.js文件。

eslint --init

三、自定义配置项

  根据规则文档,编辑.eslintrc.js文件内容。

module.exports = {
    "env": {
        "node": true
    },
    "rules": {
        // 强制使用一致的缩进
        "indent": ["warn", "tab"],
        // 禁止空格和 tab 的混合缩进
        "no-mixed-spaces-and-tabs":1,
        // 禁用 debugger
        "no-debugger": 1,
        // 禁止不必要的布尔转换
        "no-extra-boolean-cast": 1,
        // 强制所有控制语句使用一致的括号风格
        "curly": 1,
        // 禁止使用多个空格
        "no-multi-spaces": 1,
        // 要求在函数标识符和其调用之间有空格
        "func-call-spacing": 1,
        // 强制在函数括号内使用一致的换行
        "function-paren-newline": ["warn", "never"],
        // 强制隐式返回的箭头函数体的位置
        "implicit-arrow-linebreak": 1,
        // 强制在对象字面量的属性中键和值之间使用一致的间距
        "key-spacing": 1,
        // 强制在关键字前后使用一致的空格
        "keyword-spacing":1,
        // 要求调用无参构造函数时有圆括号
        "new-parens":1,
        // 禁止出现多行空行
        "no-multiple-empty-lines":1,
        // 要求使用分号代替 ASI
        "semi":["warn","always"],
        // 要求操作符周围有空格
        "space-infix-ops":1
    }
};

  配置内容也可以写在package.json中,具体规则也是写在rules里。有时用vue-cli生成的项目会在package.json里看到这样的配置:

  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "rules": {},
    "parserOptions": {
      "parser": "babel-eslint"
    }
  }

四、执行检查并修改

eslint * --fix

 

posted @ 2018-09-05 10:58  前端大兵  阅读(8118)  评论(0编辑  收藏  举报