ESLint报错不等于代码崩溃,需先看错误级别:error必须处理,warn可暂缓;再查规则来源确认是潜在风险(如no-console)还是语法隐患(如eqeqeq);可临时禁用单行或通过eslint-config-prettier解决与Prettier冲突。

ESLint 插件报错但代码能运行,怎么判断是不是真问题
ESLint 报错 ≠ 代码会崩溃,它只反映规则冲突或潜在风险。比如 no-console 报 warn,只是提醒你别在生产环境留 console.log,不影响执行;但 eqeqeq: error 遇到 == 就直接标红,因为隐式转换容易引发 bug。
- 看错误级别:
error类型必须处理,warn可先忽略(但建议统一关掉或修复) - 查规则来源:打开
Problems面板,点开具体项,右侧会显示来自哪个插件(如eslint-plugin-react)和哪条规则 - 临时禁用单行:在出问题那行上方加
// eslint-disable-next-line rule-name,比如// eslint-disable-next-line no-console - 别关
javascript.validate.enable:VSCode 自带的 JS 校验很弱,关了它只靠 ESLint 反而更干净
Prettier 和 ESLint 同时启用后格式越修越乱
这是典型规则打架——Prettier 负责“怎么排版”,ESLint 负责“怎么写才安全”,但部分 ESLint 规则(如 quotes、semi)和 Prettier 功能重叠,不协调就会反复修改。
DMap GL地图JSAPI(dmapgl)开发指南。用于编写、审查、调试 DMap 地图 API 代码,涵盖地图初始化、覆盖物渲染、图层管理、事件处理、控件交互等任务。当用户提及 dmap、dmapgl、jsapi‑gl 或相关地图开发需求时自动触发。
- 装
eslint-config-prettier并在.eslintrc.js的extends末尾加上"prettier",它会自动关掉所有与 Prettier 冲突的规则 - 确保
editor.defaultFormatter设为"esbenp.prettier-vscode",而不是 VSCode 默认的vscode.typescript-language-features - 不要同时开
editor.formatOnSave和editor.codeActionsOnSave.source.fixAll.eslint:选一个就行,推荐只开 Prettier 的自动格式化 - 项目根目录放
.prettierrc,内容明确,比如{"semi": true, "singleQuote": true},避免依赖插件默认值
为什么断点进了打包后的 bundle.js,而不是源码
没配好 source map,调试器就只能看到最终运行的代码,没法回溯到原始 .js 或 .ts 文件。这在用 Vite/Webpack 开发时特别常见。
- 确认构建时生成了
.map文件:检查输出目录里有没有同名的xxx.js.map - 在
.vscode/launch.json里加"sourceMaps": true,并设"outFiles": ["./dist/**/*.js"](路径按你实际输出目录调整) - 如果是 Vite 项目,确保
vite.config.js中build.sourcemap是true(默认开发模式已开启) - 重启调试会话:改完配置后必须停掉再 F5,否则旧缓存还在
Live Server 打开 HTML 报跨域,但用 npx http-server 就没事
Live Server 默认以 file:// 协议加载本地 HTML,浏览器直接读文件,现代浏览器会严格限制其发起的 fetch 或 XMLHttpRequest 请求;而 http-server 启的是真实 HTTP 服务,协议是 http://localhost:8080,自然没跨域问题。
- 最简单解法:右键 HTML 文件 →
Open with Live Server,它会自动起http://127.0.0.1:5500这类地址,本质就是轻量 HTTP 服务 - 别手动双击 HTML 文件打开,那才是走
file:// - 如果要用其他端口或 HTTPS,改
settings.json里的liveServer.settings.port或liveServer.settings.https - 注意:Live Server 不处理后端 API,调用
/api/xxx仍需另起后端服务或配代理

















