解锁团队协作新境界:Prettier 配置大揭秘!从代码规范到冲突解决,告别烦恼!

Hello大家好,我是日拱一卒的不浪,坚持从工作和生活中不断学习,提炼,沉淀,最终建立自己的强势领域!这是2024年输出的第4/100篇文章,欢迎志同道合的朋友一起学习交流;
公众号:攻城师不浪

wx:brown_7778

今天这篇文章不是讲prettier都有什么功能,相信有经验的工程师也都知道,不知道的就先去查下~;

我要分享的是,最近我发现,用这个prettier美化代码之后,在合并代码后,会跟团队其他同事的代码造成大量的冲突,而原因就是我俩的代码格式化不一致造成,我的血压瞬间就飙上来了。

那么问题来了:多人协作,明明配置了prettier,但是还是会造成代码风格不一致,什么原因?

究其原因,代码格式化不止与项目里的.prettierrc配置有关,还跟以下这些原因有关,请一一排查。

安装prettier包

保证项目里已经安装了prettier的包;

js 复制代码
npm i -D prettier

安装prettier插件

代码编辑器需要安装对应的prettier的插件,如vscode的插件:prettier-code formatter

prettier配置文件

在项目根目录下配置了.prettierc文件(顺便简单配一下规范)

js 复制代码
{
  "tabWidth": 2, // tab键是2个宽度
  "useTabs": false,
  "singleQuote": true, // 是否采用单引号
  "semi": true, // 是否代码尾端添加分号
  "trailingComma": "none",
  "bracketSpacing": true
}

修改编辑器的配置文件

配置编辑器的配置文件,如vscode的setting.json注意:只配置editor.defaultFormatter这一个选项即可,其他所有的defaultFormatter配置项全注释掉!不然会冲突

js 复制代码
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true, // 开启 "保存自动格式化"

修改编辑器配置

另外,vscode编辑器会有自己的prettier的默认配置,如下图,这里的配置最好跟.prettierc里的一致,否则会按照后者的配置来,也就是说如果你配置了.prettierc文件,就无需管vscode的配置了,但是要把Prettier: Config Path的配置清空,这样会自动寻找项目根目录下的.prettierc文件

检查项目是否有单独的setting.json

这一点非常重要 ,检查你的项目里是否有.vscode文件夹,文件夹里是否也有setting.json这个文件,如果有,它会覆盖掉你在编辑器的setting.json文件配置!

批量美化代码

以上,都配置完成之后,如果你想立刻把项目里所有乱遭的代码都按照你配置的规则就行美化,执行以下命令

js 复制代码
// 这是把src文件夹下所有的代码都格式化一遍
npx prettier --write src/  

总结

让你的同事按步骤依次执行以上操作,这样,以后就不会再担心合并代码会有大量的代码格式化的冲突了!tmd,高血压也好了~

如果觉得文章对你有帮助,欢迎点赞关注以及收藏,这也是支持我持续原创下去的动力~

点击关注不迷路,持续升级打怪👇👇👇

相关推荐
恋猫de小郭21 分钟前
AGENTS.md 真的对 AI Coding 有用吗?或许在此之前你没用对?
前端·人工智能·ai编程
sunny_2 小时前
构建工具的第三次革命:从 Rollup 到 Rust Bundler,我是如何设计 robuild 的
前端·rust·前端工程化
rfidunion3 小时前
springboot+VUE+部署(12。Nginx和前端配置遇到的问题)
前端·vue.js·spring boot
珹洺3 小时前
Java-servlet(五)手把手教你利用Servlet配置HTML请求与相应
java·运维·服务器·前端·servlet·html·maven
QQ24391973 小时前
语言在线考试与学习交流网页平台信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
前端·spring boot·sql·学习·java-ee
范特西.i4 小时前
QT聊天项目(6)
前端
a1117764 小时前
水体渲染系统(html开源)
前端·开源·threejs·水体渲染
程序员小李白4 小时前
CSS 盒子模型
前端·css·html
Zzz不能停4 小时前
单行 / 多行文本显示省略号(CSS 实现)
前端·css
xiaoxue..4 小时前
TailwindCSS:从“样式民工”到“UI乐高大师”的逆袭
前端·css·ui