eslint 和 prettier 是 js 项目维护的必需项:eslint 通过静态检查与自动修复(如 no-console、eqeqeq)拦截潜在问题,需禁用 formatonsave 并启用 fixall;prettier 统一代码风格(tabwidth: 2、semi: false、singlequote: true),配合 path-intellisense 防止 import 路径错误。

ESLint 和 Prettier 是 JS 项目维护效率的底线,不是“可选”,而是“必须装”。其他插件再炫酷,没它们打底,代码质量会随时间快速劣化。
ESLint:不只报错,更要能自动修复
它不是简单标红语法错误,而是对 no-console、no-unused-vars、eqeqeq 这类易引发线上问题的模式做静态拦截。关键在于配置后启用自动修复:
- 在
settings.json中加这一行:"editor.codeActionsOnSave": { "source.fixAll.eslint": true } - 运行
npx eslint --init生成配置,优先选JavaScript modules (import/export)+React或TypeScript(按项目实际) - 务必搭配
eslint-config-prettier,否则和 Prettier 规则打架,保存时反复格式化又报错 - 禁用默认的
editor.formatOnSave,让 ESLint 独占保存时的修复逻辑,避免冲突
Prettier:强制统一风格,省掉所有格式争论
它不管逻辑对错,只管缩进、括号、分号、引号这些“人肉争议点”。JS 维护成本里,30% 来自团队成员写法不一致。Prettier 直接砍掉这部分沟通开销:
- 设置
"editor.defaultFormatter": "esbenp.prettier-vscode",并开启editor.formatOnSave - 根目录建
.prettierrc,至少配这三项:tabWidth: 2、semi: false、singleQuote: true - 加
.prettierignore排除node_modules、dist、build,不然格式化整个打包产物会卡死 - 注意:Prettier 对
jsx和ts文件支持良好,但对vue模板需配合 Volar 才能生效
Path Intellisense:减少 import 路径出错导致的运行时崩溃
大型 JS/TS 项目里,import utils from '../../../utils/index' 这种路径一写错,就直接白屏。它不是锦上添花,是防线上事故的第一道防线:
- 安装后默认生效,输入
import后敲./就弹路径树 - 如项目用了别名(如
@/components),需在jsconfig.json或tsconfig.json里配compilerOptions.paths - 不建议全局启用,可在
settings.json加"path-intellisense.mappings": { "@": "${workspaceFolder}/src" }精准控制 - 它不解析
require(),只响应 ES module 的import语句
真正影响 JS 维护效率的,从来不是功能多寡,而是规则是否落地、是否无感执行。ESLint 和 Prettier 的配置一旦松动,三个月后就会在 PR 里看到几十个格式修改混在逻辑变更里——那才是最耗团队精力的地方。











