eslint

一、安装
1、全局安装
npm i -g eslint
2、项目安装
npm i -D eslint
二、eslint 定义规则

1、创建 .eslintrc.js 文件
可以使用 ./node_modules/.bin/eslint --init 创建文件
.eslintrc.* 文件支持 .js .yaml .yal .json等格式的配置文件,这里使用 .js文件。
在 package.json 里创建一个 eslintConfig 属性,在那里,同样可以定义你的配置。
如果 .eslintrc.js 和 package.json里的 eslintConfig 同时存在,则只读取 .eslintrc.js文件
2、eslint 选项说明
(1)

“root”: true

默认情况下,ESLint 会在所有父级目录里寻找配置文件,一直到根目录。如果发现配置文件中有 “root”: true,它就会停止在父级目录中寻找。
(2)

"parserOptions": {
	"parser": "babel-eslint", // 解析器,默认使用Espree
    "ecmaVersion": 6, // 支持es6语法,但并不意味着同时支持新的 ES6 全局变量或类型(比如 Set 等新类型)
    "sourceType": "module",	// 指定来源的类型,"script" (默认) 或 "module"(如果你的代码是 ECMAScript 模块)
    // 使用的额外的语言特性
    "ecmaFeatures": {
        "jsx": true, // 启用 JSX
        "globalReturn": true, // 允许在全局作用域下使用 return 语句
        "impliedStrict": true, // 启用全局 strict mode (如果 ecmaVersion 是 5 或更高)
        "experimentalObjectRestSpread": true,	// 启用实验性的 object rest/spread properties 支持。(重要:这是一个实验性的功能,在未来可能会有明显改变。 建议你写的规则 不要 依赖该功能,除非当它发生改变时你愿意承担维护成本。)
    }
}

解析器选项可以在 parserOptions 属性设置。设置解析器选项能帮助 ESLint 确定什么是解析错误,所有语言选项默认都是 false。
(3)

"env": {
    es6: true, // 启用 ES6 语法支持以及新的 ES6 全局变量或类型
    node: true, // Node.js 全局变量和 Node.js 作用域
    browser: true, // 浏览器全局变量
    jquery: true // jQuery 全局变量
}

使用 env 关键字指定你想启用的环境。
更多环境设置请参考:https://cn.eslint.org/docs/user-guide/configuring#specifying-environments
(4)

"globals": {
    template: false, // false 不允许被重写
    _util: false
}

当访问当前源文件内未定义的变量时,no-undef 规则将发出警告。如果你想在一个源文件里使用全局变量,推荐你在 ESLint 中定义这些全局变量,这样 ESLint 就不会发出警告了。
(5)

"plugins": [
    "html" // 此插件用来识别.html 和 .vue文件中的js代码
]

ESLint 支持使用第三方插件。在使用插件之前,你必须使用 npm 安装它。如:npm i -D eslint-plugin-html。在配置文件里配置插件时,可以使用 plugins 关键字来存放插件名字的列表。插件名称可以省略 eslint-plugin- 前缀。
(6)

extends: “eslint:recommended”

一个配置文件可以从基础配置中继承已启用的规则。如上,如果值为字符串数组则每个配置继承它前面的配置。值为 “eslint:recommended” 的 extends 属性启用了eslint默认的规则,请参考:https://cn.eslint.org/docs/rules/
(7)
"ru

les": {
	'indent': [2, 4], // 强制使用一致的缩进
    'eqeqeq': [2, 'always'], // 要求使用 === 和 !==
    'semi': [2, 'never'], // 要求或禁止使用分号代替 ASI 
    'quotes': [2, 'single']  // 强制使用一致的反勾号、双引号或单引号
}

ESLint 附带有大量的规则。你可以在rules选项中设置,设置的规则将覆盖上面继承的默认规则。要改变一个规则设置,你必须将规则 ID 设置为下列值之一:

“off” 或 0 - 关闭规则
“warn” 或 1 - 开启规则,使用警告级别的错误:warn (不会导致程序退出)
“error” 或 2 - 开启规则,使用错误级别的错误:error (当被触发的时候,程序会退出)

原文链接:https://blog.csdn.net/mrzhangdulin/article/details/100297816

你可能感兴趣的:(vue)