eslint与prettier冲突时需统一规则:项目根目录配置.eslintrc.cjs引入eslint-config-prettier,settings.json指定"editor.defaultformatter":"esbenp.prettier-vscode",禁用eslint.format.enable,避免formatonsave与eslint格式化争抢。

VSCode 插件不是越多越好,而是要精准解决「代码写错难发现、格式混乱难维护、路径手写总出错、组件跳转找不到」这四类高频痛点。盲目装插件反而拖慢编辑器、引发规则冲突、让新人更难上手。
ESLint 和 Prettier 冲突时怎么调?
常见错误现象是保存后代码被反复格式化又报错,比如 semi 规则和 prettier.semi 不一致,或 quotes 与 prettier.singlequote 对不上。
- 先确认项目根目录有
.eslintrc.cjs(或.eslintrc.js),里面已引入eslint-config-prettier,禁用所有和 Prettier 重叠的规则 - VSCode 的
settings.json中必须指定"editor.defaultFormatter": "esbenp.prettier-vscode",否则 ESLint 可能抢着格式化 - 不要同时启用
editor.formatOnSave和eslint.format.enable,后者只在需要手动触发 ESLint 格式化时才开 - Vue 项目额外加
plugin:vue/vue3-essential,React 项目加plugin:react/recommended,避免漏检defineProps或useState类型问题
Volar 和 Vetur 能不能共存?
不能。两者都会监听 .vue 文件,同时启用会导致语法高亮错乱、Ctrl+Click 跳转失效、setup 语法提示消失,甚至编辑器卡顿。
前端设计与 UI/UX 全方位优化专家。覆盖视觉层次、排版系统、色彩理论、响应式布局、交互体验、动画动效、无障碍访问、性能优化八大维度,帮助开发者将普通页面升级为高品质产品级界面。前端设计与 UI/UX 全方位优化专家。覆盖视觉层次、排版系统、色彩理论、响应式布局、交互体验、动画动效、无障碍访问、性能优化八大维度,帮助开发者将普通页面升级为高品质产品级界面。
- Vue 3 项目只装
Volar,卸载Vetur(即使灰显也要彻底禁用) - Vue 2 项目只装
Vetur,Volar 对 Options API 支持不完整 - 如果项目混合 Vue 2/3(如微前端子应用),按主框架版本选插件,次要部分靠手动补全
- 检查
settings.json里有没有残留的"vetur.*"配置,有就删掉,Volar 不读这些
路径补全为什么经常提示不到文件?
典型表现是输入 import { X } from './ 后没反应,或只显示一级目录,深层嵌套路径不出现。根本原因不是插件坏了,而是 VSCode 没识别到当前工作区上下文。
-
Path Intellisense默认只扫描当前打开的文件夹,多根工作区(multi-root workspace)下需在.code-workspace文件中显式配置"path-intellisense.mappings" - 如果路径含别名(如
@/components),必须配合jsconfig.json或tsconfig.json的"compilerOptions.baseUrl"和"paths"才能解析 - Webpack/Vite 别名配置(
resolve.alias)对插件无效,它只认 TS/JS 的原生路径映射 - 重启 VSCode 后首次加载较慢,等右下角状态栏不再显示「Scanning paths…」再试
Live Server 为啥改了 HTML 不自动刷新?
不是插件坏了,而是默认只监听 .html 文件变更。CSS、JS、Vue 组件改了不会触发刷新,容易误以为“失效”。
- 打开命令面板(
Ctrl+Shift+P),运行Live Server: Change Settings,把"liveServer.settings.donotShowInfoMsg"设为false查看实时日志 - 在
settings.json中加"liveServer.settings.CustomBrowser": "chrome"确保唤起的是调试版 Chrome(带 DevTools) - 真正要监听非 HTML 文件,得配合
livereload或 Webpack HMR;Live Server 本身不支持扩展监听列表 - 如果用了 Vite/Next.js 等自带 dev server 的框架,直接关掉 Live Server,别让它和框架的热更新打架
插件配置不是一次搞定就一劳永逸的事——项目升级、TS 版本变动、团队新增规范,都可能让某条规则突然失效。最常被忽略的是 package.json 里 devDependencies 的插件对应 CLI 工具版本是否匹配,比如 eslint v9 和 eslint-plugin-vue v9 必须对齐,差一个 patch 版本就可能丢掉 defineEmits 类型校验。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










