原理
eslint 的功能:
- 代码质量问题
- 代码风格问题
prettier:代码格式化工具
两者配合的工作原理:
- 禁用所有和 prettier 冲突的 eslint 的代码格式规则
将所有 prettier 的规则和修改导入 eslint 中,在 eslint 统一的显示这些错误
插件
安装
eslint-config-prettier
插件配置集,把其配置到 eslintrc 规则的尾部。执行ESLint命令,会禁用那些和Prettier配置有冲突的规则。- 安装
eslint-plugin-prettier
插件,先使用Prettier对代码进行格式化,再并对不一致的地方进行标记;
这两个包配合使用,可以达到运行eslint --fix
时,采用 prettier 的配置规则 来格式化文件
module.exports = {
"plugins": ["prettier"],
"rules": {
"prettier/prettier": "warn"
}
}
https://github.com/prettier/eslint-plugin-prettier#recommended-configuration
可以一次性设置插件eslint-config-prettier
{
"extends": ["plugin:prettier/recommended"]
}
配置参考
- vue-cli 默认生成的 ```json module.exports = { root: true, env: { node: true, }, extends: [“plugin:vue/essential”, “eslint:recommended”, “@vue/prettier”], parserOptions: { parser: “babel-eslint”, }, rules: { “no-console”: process.env.NODE_ENV === “production” ? “warn” : “off”, “no-debugger”: process.env.NODE_ENV === “production” ? “warn” : “off”, }, };
- rules:定义验证规则
- extends:使用预设lint包,数组后面覆盖前面的
- `plugin:vue/essential` [https://eslint.vuejs.org/](https://eslint.vuejs.org/)
- `eslint:recommended`:ESLint内置的推荐规则,属性启用一系列核心规则,这些规则报告一些常见问题,在 [规则页面](https://link.juejin.cn/?target=https%3A%2F%2Feslint.bootcss.com%2Fdocs%2Frules%2F) 中被标记为✅
- `@vue/prettier`:@vue/eslint-config-prettier 配置如下
```javascript
module.exports = {
plugins: ['prettier'],
extends: [
require.resolve('eslint-config-prettier'),
require.resolve('eslint-config-prettier/vue')
],
rules: {
'prettier/prettier': 'warn'
}
}