esbenp.prettier-vscode 是唯一官方推荐插件,需配合本地 prettier 包、.prettierrc.json5 配置(含 overrides)及禁用冲突插件才能正常格式化 vue/tsx 文件。

esbenp.prettier-vscode 是唯一应安装的官方插件,其他同名插件大概率不兼容 Vue/TSX 或读不了 .prettierrc.json5 注释。
只装这个插件,别点“Prettier”就安装
VS Code 扩展市场搜 “prettier” 会列出一堆插件,但只有 esbenp.prettier-vscode 是 Prettier 官方维护(280 万+ 下载量)。其他插件常见问题包括:
-
prettier.requireConfig: true开启后直接报错“No config file found” - 在
.vue文件里抛出Cannot parse unknown language - 无法解析
.prettierrc.json5中的注释或overrides块
安装路径:Ctrl+Shift+X → 输入 esbenp.prettier-vscode → Install。装完建议重启 VS Code,确认右下角状态栏出现 Prettier 图标。
必须本地装 prettier 包,不能只靠插件
插件本身不带可执行文件,它只调度你项目里的 prettier。没装包,Format Document 就会静默失败或 fallback 到默认规则(semi: true, tabWidth: 2)。
- 运行
npm install --save-dev prettier --save-exact(推荐) - 验证:
npx prettier --version输出必须和package.json里一致 - 若用
pnpm或yarn v4+,需在.vscode/settings.json中显式指定:"prettier.pretterrPath": "./node_modules/prettier/index.cjs"
.prettierrc.json5 是生效前提,JSON 不行
纯 .prettierrc.json 容易因多逗号、少引号导致整个配置失效,且不支持注释——协作时别人看不懂为什么设 printWidth: 100。VS Code 不向上查找父目录配置,子项目要独立规则就得单独放一份。
- 在项目根目录新建
.prettierrc.json5 - 必须包含
overrides,否则.vue文件会解析失败 - 示例关键段:
"overrides": [{ "files": ["*.vue"], "options": {"parser": "vue"} }]
格式化没反应?先关掉冲突插件
Beautify、JS-CSS-HTML Formatter 这类插件会劫持 editor.formatOnSave,导致按 Shift+Alt+F 没反应、保存后分号忽有忽无。
- 卸载所有非官方格式化插件
- 检查
.vscode/settings.json是否含"editor.defaultFormatter"冲突项 - 确保启用
prettier.requireConfig: true,避免插件用内置默认值覆盖团队规范
overrides 和 prettier.requireConfig 这两个开关漏一个,Vue 或 TSX 文件就大概率崩。











