{
// --- UI 与基础编辑设置 ---
"workbench.iconTheme": "vscode-icons",
"editor.fontSize": 14,
"editor.tabSize": 2,
"editor.wordWrap": "on",
// --- 保存时行为 (核心修复) ---
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
// 保存时自动执行 ESLint 修复
"source.fixAll.eslint": "explicit",
"source.fixAll.stylelint": "explicit"
},
// --- ESLint 扩展设置 ---
// 确保 ESLint 插件开启了格式化功能
"eslint.format.enable": true,
"eslint.validate": ["javascript", "typescript", "vue"],
// --- 语言专属设置 (关键) ---
// 将前端逻辑代码的默认格式化工具强制设为 ESLint
"[vue]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
},
"[typescript]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
},
"[javascript]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint"
},
// --- 其他文件保留 Prettier ---
// JSON、CSS、HTML 等依然可以使用 Prettier
"[json]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[jsonc]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[css]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[scss]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[html]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }
}