目前我们所学习的两个工具:Pretter 和 ESLint,两者都有管理代码风格的功能,因此两者往往就会在代码风格的管理上面存在一些冲突。

举一个例子:

  • ESLint 配置了单引号规则
  • Prettier 配置了要使用双引号

为了解决这个问题,有两个思路:

  1. 手动的将其中一个工具的配置文件进行修改,改成和另外一个工具的配置是相同的。这种方式肯定是没有问题的,但是缺点是如果涉及到大量的规则,手动操作比较繁琐
  2. 使用一些插件来帮助我们解决
    • 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" 
   }  
}