Prettier CLI与VS Code缩进冲突:空格变制表符致Git Diff异常
问题分析与解决方案
问题根源
你的pretty npm脚本中显式添加了--use-tabs参数,这个命令行参数会覆盖.prettierrc里useTabs: false的配置,导致CLI运行Prettier时强制使用制表符缩进,而VS Code中是读取配置文件的空格缩进规则,两者行为不一致引发Git Diff混乱。
解决步骤
- 修改npm脚本:移除
pretty命令中的--use-tabs参数,让Prettier遵循.prettierrc的配置:"pretty": "prettier --config .prettierrc --write \"src/**/*.{js,jsx,ts,tsx,json}\"" - 验证修复效果:运行以下命令检查文件格式,确认不会再将空格替换为制表符:
prettier --config .prettierrc --check src/**/*.{js,jsx,ts,tsx,json} - 可选:统一版本与配置
- 确保全局安装的Prettier版本和项目本地
node_modules中的版本一致,避免版本差异导致的配置解析问题 - 若需要,可以在项目根目录添加
.editorconfig文件(即使VS Code设置了prettier.useEditorConfig: false,也能给其他工具提供统一规则参考):root = true [*] indent_style = space indent_size = 4
- 确保全局安装的Prettier版本和项目本地
内容的提问来源于stack exchange,提问作者AX2
相关产品推荐
相关产品推荐

