VSCode的Prettier – Code formatter配置最佳实践

15次阅读

vscode中Prettier需配置为默认格式化工具、项目级.prettierrc、EditorConfig统一编辑行为、.prettierignore排除路径,并启用按语言保存自动格式化。

VSCode的Prettier – Code formatter配置最佳实践

如果您在使用 VSCode 编辑代码时发现格式化结果不符合团队规范或个人预期,则可能是 Prettier 的配置未正确对齐项目需求或编辑器设置。以下是实现 Prettier 高度可控、一致且可复用的配置方法:

本文运行环境:MacBook Pro,macos Sequoia。

一、启用 Prettier 作为默认格式化工具

此步骤确保 VSCode 在执行格式化操作(如快捷键 Cmd+Shift+I)时调用 Prettier 而非内置 javaScript 或 typescript 格式化器,避免规则冲突与行为不一致。

1、打开 VSCode 设置(Cmd+,),切换至“工作区”标签页。

2、搜索 setting.json 并点击“在 settings.json 中编辑”链接。

3、在 jsON 文件中添加以下键值对:
“editor.defaultformatter”: “esbenp.prettier-vscode

4、确认已禁用其他格式化扩展的自动格式化功能,例如禁用 TypeScript 自动格式化:
typescript.format.enable”: false

二、配置项目级 .prettierrc 文件

通过本地配置文件定义格式规则,使 Prettier 行为与团队约定完全一致,并优先于用户级设置,保障跨编辑器与 CI 环境的一致性。

1、在项目根目录创建名为 .prettierrc 的文件(支持 json、YAML 或 JS 格式)。

2、写入标准兼容性配置示例:
{ “semi”: true, “singleQuote”: true, “tabWidth”: 2, “trailingComma”: “es5”, “printWidth”: 80 }

3、保存后重启 VSCode 窗口,验证修改是否生效:打开任意 .js 文件并触发格式化。

三、集成 EditorConfig 统一基础编辑行为

EditorConfig 在 Prettier 执行前统一缩进、换行符等底层编辑属性,防止因操作系统或编辑器差异导致意外格式偏移。

1、在项目根目录创建 .editorconfig 文件。

2、填入以下内容:
root = truen[*]nindent_style = spacenindent_size = 2nend_of_line = lfncharset = utf-8ntrim_trailing_whitespace = trueninsert_final_newline = true

3、确保已安装 VSCode 的 EditorConfig for VS Code 扩展,并确认其状态栏图标显示为激活状态。

四、配置 .prettierignore 排除无关路径

避免 Prettier 对构建产物、依赖包或特定配置文件进行无意义格式化,提升性能并防止误改生成文件。

1、在项目根目录新建 .prettierignore 文件。

2、逐行写入需跳过格式化的路径模式,例如:
node_modules/nbuild/ndist/n*.min.jsncoverage/

3、验证忽略逻辑:在 dist/ 目录下新建 test.js 并尝试格式化,确认无任何变更发生。

五、绑定保存时自动格式化并限制作用域

启用保存即格式化可减少手动操作,但需限定仅对受支持语言生效,避免对 markdown、JSON 等非代码文件误触发。

1、在工作区 settings.json 中添加:
“editor.formatOnSave”: true

2、为 javascript 和 TypeScript 单独启用格式化:
“[javascript]”: { “editor.formatOnSave”: true }, “[typescript]”: { “editor.formatOnSave”: true }

3、禁用对 JSON 文件的保存格式化(因其结构敏感):
“[json]”: { “editor.formatOnSave”: false }

text=ZqhQzanResources