解决eslint与prettier在代码格式上的冲突

eslint与prettier在代码格式上的冲突

因为eslint本身也具备对代码格式的控制与检查能力,所以不可避免可能会与prettier的代码格式冲突,比如eslint配置rules中对缩进的要求为2并在不满足时报错**。**

解决方案很简单------思路就是把prettier的规则复写进eslint中,并对原本eslint中的格式配置进行覆盖,这样就做到了eslint的格式化检查与prettier的格式化行为统一。

1.安装

bash 复制代码
pnpm install -D eslint-config-prettier

2.配置

javascript 复制代码
{
  "extends": [
    "已经配置的规则",
    "prettier",
  ]
}

extends的值为数组,后面的数组项会继承和覆盖前面的配置,所以完成了prettier规则对eslint规则的扩充和覆盖。

最佳实践------省略prettier格式化命令,eslint进行格式化与检查一步到位

完成上述操作本质是做到了 ESLint 会按照 Prettier 的规则做相关校验,也就是说先执行Prettier格式化后再执行eslint检查不会因为格式问题冲突而报错,但是还是需要运行 Prettier 命令来进行格式化。为了避免多此一举,社区也提供了整合上面两步的方案:在使用 eslint --fix(eslint错误修复) 时候,实际使用 Prettier 来替代 ESLint 的格式化功能。操作如下:

1.安装

bash 复制代码
pnpm install -D eslint-plugin-prettier

2.配置

javascript 复制代码
{
  "extends": [
    "已经配置的规则",
    "plugin:prettier/recommended"
  ],
  "rules": {
    "prettier/prettier": "error",
  }
}
相关推荐
xiaok几秒前
await返回之后的赋值给一个变量可以打印出数值,但是直接return回去之后,在另一个函数打印出来却是一个promise
前端
Bl_a_ck3 分钟前
【JS进阶】ES6 实现继承的方式
开发语言·前端·javascript
小马虎本人4 分钟前
如果接口返回的数据特别慢?要怎么办?难道就要在当前页面一直等吗
前端·react.js·aigc
蓝胖子的多啦A梦7 分钟前
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚
前端·npm·node.js
LinCC79 分钟前
在Vite中构建项目出错-Top-level await is not available in the configured target environme
前端
咪库咪库咪10 分钟前
js的浅拷贝与深拷贝
javascript
幸福的猪在江湖10 分钟前
第一章:变量筑基 - 内力根基修炼法
javascript
Ryan今天学习了吗10 分钟前
💥不说废话,带你使用原生 JS + HTML 实现超丝滑拖拽排序效果
javascript·html
用户8820932166711 分钟前
如何优雅拆分一个充斥十几种逻辑的 SDK 回调函数?
前端
Momoly0812 分钟前
vue3+el-table 利用插槽自定义数据样式
前端·javascript·vue.js