Prettier保存自动格式化失效,需检查三处:①editor.formatOnSave是否设为true;②editor.defaultFormatter是否明确指定为esbenp.prettier-vscode;③若集成ESLint,须安装eslint-config-prettier并将其置于.eslintrc.js的extends末尾以避免规则覆盖。

VSCode 不装插件,等于裸写——不是不能用,而是把本该由工具干的活,全扛在自己肩上。
prettier 保存时自动格式化失效?检查这三处
很多人装了 Prettier 却发现 Ctrl+S 没反应,不是插件坏了,而是配置没对齐。
-
editor.formatOnSave必须设为true(设置里搜这个关键词直接勾选) -
editor.defaultFormatter要明确指定为esbenp.prettier-vscode,不能只装插件不设默认格式器 - 若项目同时用了
ESLint,必须安装eslint-config-prettier并在.eslintrc.js的extends里把它放在最后,否则 ESLint 会覆盖 Prettier 的格式规则
常见错误现象:Ctrl+S 后缩进没变、单双引号没统一、括号换行被忽略——基本就是上面某一项漏了。
路径别名跳转不到 @/xxx?jsconfig.json 比插件更重要
装了 Path Intellisense 或 Vue Alias Skip 还是跳转失败,问题往往不在插件,而在项目级路径映射没声明。
- 根目录下必须有
jsconfig.json(TS 项目用tsconfig.json),内容至少包含:
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": ["src/*"]
}
}
}
注意:paths 是相对 baseUrl 的,不是相对于当前文件;@ 后面的 / 不能省,否则 VSCode 不识别为别名前缀。
- 改完
jsconfig.json后要重启 VSCode,仅重载窗口不够 - 如果用的是 Vite,还需确认
vite.config.ts中的resolve.alias和jsconfig.json一致,否则运行时没问题、编辑器跳转仍失败
ESLint 报错但不修复?别只靠右键菜单
ESLint 插件默认只标红,不自动修——除非你主动触发或配好快捷键。
- 手动修复:右键 →
Fix all auto-fixable problems(但只作用于当前文件) - 更实用的是绑定快捷键:打开
keybindings.json,加这条:
{ "key": "ctrl+alt+f", "command": "eslint.executeAutofix" }
这样就能一键修复当前文件所有可修复项。注意它和 editor.action.formatdocument 不同,后者走 Prettier,前者才真正调 ESLint 的 --fix 逻辑。
- 想保存时自动修复?不行。ESLint 官方明确不支持
formatOnSave自动修复,这是设计使然——避免误修业务逻辑相关的警告(比如no-console)
vue-helper 的 alt+x 扩选失效?检查是否冲突
vue-helper 的扩选功能(alt+x)非常高效,但 Windows 下容易和系统快捷键冲突。
- 先确认插件已启用:扩展面板搜
vue-helper,状态显示“已启用” - 打开
keybindings.json,搜alt+x,看是否有其他插件或系统设置占用了该组合键(比如某些输入法、远程桌面工具) - 若冲突,直接改绑定:
"key": "ctrl+shift+x"更稳妥 - 该功能只在
.vue文件的<template>和<script>区域生效,.js 文件里按了没反应是正常现象
真正容易被忽略的,是插件能力依赖语言服务——如果 Vue 项目没配 jsconfig.json 或 vetur/volar 没启,vue-helper 的悬停跳转、扩选都可能降级或失效。


















