目前我们所学习的两个工具:Pretter 和 ESLint,两者都有管理代码风格的功能,因此两者往往就会在代码风格的管理上面存在一些冲突。
举一个例子:
- ESLint 配置了单引号规则
- Prettier 配置了要使用双引号
为了解决这个问题,有两个思路:
- 手动的将其中一个工具的配置文件进行修改,改成和另外一个工具的配置是相同的。这种方式肯定是没有问题的,但是缺点是如果涉及到大量的规则,手动操作比较繁琐
- 使用一些插件来帮助我们解决
eslint-config-prettier
:会关闭所有与 Prettier 冲突的 ESLint 规则eslint-plugin-prettier
:将 Prettier 作为 ESLint 规则来运行,这样在运行 ESLint 时也会运行 Prettier。
安装这两个包和 TypeScript 的 Eslint 插件:
pnpm i -D eslint prettier eslint-config-prettier eslint-plugin-prettier @typescript-eslint/eslint-plugin
修改 ESLint 的配置文件:
{
"env": {
"browser": true,
"es2021": true,
"node": true
},
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"prettier",
"plugin:prettier/recommended"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module"
},
"plugins": ["@typescript-eslint", "prettier"],
"rules": {
"prettier/prettier": "error"
}
}