Prettier在CI中格式检查不通过,本地却没问题? 秀花酱~ 提问于 2026-03-07 13:12:20 阅读 3 工具 我在本地跑 prettier --check . 没问题,但推到GitHub Actions里就报错说格式不对,这到底啥情况? 我用的是React项目,代码长这样: const Button = ({ label }) => { return <button className="btn">{label}</button>; }; export default Button; 明明本地保存时自动格式化了,CI却说这文件没按Prettier规则来,是不是版本不一致导致的? 我来解答 赞 4 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 1 条解答 司徒柯欣 Lv1 哈,这种问题我在WP里面也遇到过几次。99%的概率是CI环境和本地环境用的Prettier版本不一致。 先确认下你本地的Prettier版本: npx prettier --version 然后在GitHub Actions的日志里找到它用的版本号对比下。如果不一样,解决办法很简单: 1. 在package.json里固定版本,比如: "devDependencies": { "prettier": "2.8.8" } 2. CI里跑命令前先装依赖: npm install npx prettier --check . 还有个常见坑是.editorconfig或.prettierrc配置没提交到git,导致CI环境没有你的格式化规则。检查下这些文件是不是都在仓库里。 如果还不行,在CI脚本里加个调试命令看看实际运行的规则: npx prettier --debug-check . 这破事浪费过我一下午时间,后来学乖了,团队项目必须锁死格式化工具版本... 回复 点赞 2026-03-07 14:01 加载更多 相关推荐 2 回答 56 浏览 Prettier在CI中运行报错:找不到配置文件,但本地正常? 我在GitHub Actions里用Prettier检查代码格式时,总是报错“Error: Unable to find .prettierrc in the working directory”,但... 志煜酱~ 工具 2026-02-03 20:24:48 1 回答 9 浏览 Prettier 格式化 Vue 模板时为什么缩进不对? 我用 Prettier 格式化 Vue 文件,但模板部分的缩进总是乱的,明明配置了 tabWidth 为 2,可它还是用 4 个空格。试过重启编辑器、重装插件都没用。 这是我的组件代码: <te... 闲人志利 前端 2026-03-04 12:13:18 1 回答 16 浏览 Capacitor 打包后 HTML 里的本地图片为啥加载不出来? 我在用 Capacitor 打包一个 Vue 项目到 Android,本地图片在浏览器里能正常显示,但打包成 App 后就变成空白了。试过把图片放 public 目录和 assets 里都不行,路径应... 恒菽 框架 2026-03-01 04:57:19 1 回答 20 浏览 ESLint 和 Prettier 配合时为什么格式化冲突? 我按照网上的教程配了 ESLint + Prettier,但保存文件时格式老是打架。比如 Prettier 想加个分号,ESLint 却报错说不能加分号,明明 .eslintrc 里已经关了这个规则。... Newb.一涵 工具 2026-02-28 13:00:20 1 回答 18 浏览 Prettier 为啥不格式化我的 Vue 单文件组件? 我用 Prettier 格式化 Vue 文件时,模板部分完全没反应,是配置问题吗? 我已经装了 Vetur 和 Prettier 插件,也设置了默认格式化工具为 Prettier,但保存时只有 scr... 令狐淇钧 工具 2026-02-28 03:42:22 1 回答 27 浏览 为什么安装了prettier的husky hook后提交还是没格式化? 刚给项目配了husky + prettier的pre-commit钩子,但每次提交代码都没触发格式化。已经按文档装了husky、prettier、lint-staged,package.json里配置... 司徒兴瑞 工具 2026-02-19 12:23:27 2 回答 22 浏览 GitLab CI/CD管道如何在部署前检查依赖版本是否存在漏洞? 在配置GitLab CI/CD部署Node.js项目时,我想在部署前自动检查npm包是否存在已知安全漏洞。试过在.gitlab-ci.yml里加npm audit命令,但发现有些依赖是通过packag... 玲玲的笔记 前端 2026-02-18 15:21:27 2 回答 65 浏览 ESLint和Prettier配置冲突怎么解决?代码格式检查老报错 最近团队要求统一代码规范,我把ESLint和Prettier都配上了,但每次保存代码都会报错,比如"Unexpected spaces"和"Missing semicolon"。 尝试过安装eslin... Zz子斌 前端 2026-02-17 00:11:28 2 回答 29 浏览 为什么Prettier插件无法正确格式化HTML中的自定义组件标签? 我在用Prettier+prettier-plugin-vue格式化Vue单文件组件时,发现自定义组件的标签会自动合并成一行,比如<MyComponent></MyComponent... Good“莉莉 工具 2026-02-16 23:08:24 2 回答 67 浏览 Capacitor相机插件拍照后如何保存到本地并显示缩略图? 在用Capacitor的Camera插件拍照后,想把照片保存到本地并显示缩略图。按照文档调用Camera.getPhoto()时设置resultType: 'dataURL',但保存到Filesyst... 皇甫鉴恒 移动 2026-02-07 14:56:28
先确认下你本地的Prettier版本:
然后在GitHub Actions的日志里找到它用的版本号对比下。如果不一样,解决办法很简单:
1. 在package.json里固定版本,比如:
2. CI里跑命令前先装依赖:
还有个常见坑是.editorconfig或.prettierrc配置没提交到git,导致CI环境没有你的格式化规则。检查下这些文件是不是都在仓库里。
如果还不行,在CI脚本里加个调试命令看看实际运行的规则:
这破事浪费过我一下午时间,后来学乖了,团队项目必须锁死格式化工具版本...