新闻中心
Prettier与ESLint:在VSCode中实现代码格式化与校验
Prettier负责代码格式化,ESLint负责逻辑与质量检查;需关闭ESLint中格式规则、配置VSCode保存时自动格式化与修复,并通过项目配置文件统一团队规范。

在 VSCode 中同时用好 Prettier 和 ESLint,关键不是“谁替代谁”,而是“谁管格式、谁管逻辑”——Prettier 负责统一代码样式(缩进、引号、换行等),ESLint 负责检查代码质量与潜在问题(如未使用变量、错误的 Promise 用法等)。两者配合得当,编辑器保存时就能自动格式化 + 校验报错,开发体验更顺。
明确分工:Prettier 做格式,ESLint 做规则
Prettier 是“不接受商量”的格式化工具,它不支持配置“是否加分号”这类风格争议项(除非关掉整个规则);ESLint 则是可高度定制的静态检查器,能覆盖语法、逻辑、安全等多维度。若让 ESLint 同时管格式,容易和 Prettier 冲突(比如一个要分号、一个不要),导致保存后反复格式化或报错不消失。
- 关闭 ESLint 中所有与格式相关的规则(如 semi、quotes、comma-dangle),推荐直接使用 eslint-config-prettier 来一键禁用冲突规则
- 保留 ESLint 的业务逻辑类规则(如 no-unused-vars、react-hooks/exhaustive-deps、no-async-promise-executor)
- Prettier 配置保持精简,通常只需指定 semi、singleQuote、tabWidth 等基础项,其余交给默认值
VSCode 设置:确保保存时自动执行
VSCode 默认不会在保存时同时触发 Prettier 格式化和 ESLint 修复,需手动配置对齐行为:
- 安装官方扩展:Prettier(by Esben Petersen)和 ESLint(by Dirk Baeumer)
- 在 VSCode 设置(settings.json)中启用保存时格式化,并指定默认格式化工具为 Prettier:
"editor.formatOnS*e": true
"editor.defaultFormatter": "esbenp.prettier-vscode" - 允许 ESLint 在保存时自动修复**可修复的问题**(如引号、空格等已被禁用的格式规则除外):
"editor.codeActionsOnS*e": { "source.fixAll.eslint": true } - 如项目含多种语言(如 .vue 或 .ts),建议按语言单独设置格式化器,避免误处理
项目级配置:靠配置文件统一团队行为
仅靠 VSCode 设置无法保证所有开发者一致,必须把规则落到项目配置文件中:
简小派
简小派是一款AI原生求职工具,通过简历优化、岗位匹配、项目生成、模拟面试与智能投递,全链路提升求职成功率,帮助普通人更快拿到更好的 offer。
123
查看详情
- 根目录放 .prettierrc(或 prettier.config.js),定义 Prettier 行为
- 用 .eslintrc.cjs(或 .js/.json)配置 ESLint,继承 eslint:recommended + plugin:react/recommended(如需)+ prettier(即 eslint-config-prettier)
- 加 .eslintignore 排除 node_modules、dist 等无需检查的目录
- 可选:添加 package.json 中的脚本,如 "lint": "eslint src/" 和 "format": "prettier --write src/",方便 CI 或手动执行
常见问题:为什么保存没反应?或提示“ESLint couldn’t determine the plugin”?
多数问题出在插件未正确加载或配置路径不对:
- 确认项目本地安装了 prettier、eslint、eslint-config-prettier(及所需插件如 @typescript-eslint/eslint-plugin),而非仅全局安装
- VSCode 工作区必须打开的是项目根目录(含 node_modules 和配置文件),否则扩展找不到本地依赖
- 检查 ESLint 输出面板(Ctrl+Shift+U → 选择 ESLint),看是否有加载失败或路径警告
- 如果用了 TypeScript,确保 @typescript-eslint/parser 和对应插件已配置,且 parserOptions.project 指向正确的 tsconfig.json
基本上就这些。配好一次,后续开发就几乎不用操心格式和低级错误,专注写逻辑本身。
以上就是Prettier与ESLint:在VSCode中实现代码格式化与校验的详细内容,更多请关注其它相关文章!
# 的是
# 茶叶线上营销抖音推广
# 临汾seo优化有哪些
# 营销网络推广供应商
# 鄂州谷歌seo哪家好
# 西安在线推广网站
# 亳州seo优化哪家专业
# 协会网站建设哪家强
# 资阳视频seo公司
# 石林网络营销网络推广
# 东莞餐厅网站建设方案
# 已被
# 找不到
# 则是
# 加载
# vscode
# 多维
# 开发人员
# 报错
# 化与
# 常见问题
# 配置文件
# 工具
# typescript
# node
# json
# js
# react
# vue
# 代码格式化
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
俄罗斯Yandex搜索引擎入口_Yandex官网免登录一键访问
CSS Grid如何控制元素对齐_align-items与justify-items组合使用
今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程
PyTorch模型训练效果不佳?深入剖析常见错误与调试技巧
如何在复杂的电商平台中优雅地管理共享资源并确保正确重定向,使用spryker-shop/resource-share-page模块助你一臂之力
快手极速版在线观看 官方网页版登录地址
Spring Boot内嵌服务器与J*a EE全栈特性:选择与部署策略
如何使用纯J*aScript判断Input元素是否在特定类容器内
win11专注助手在哪 Win11免打扰模式设置与自动化规则【指南】
星露谷物语官网入口 星露谷物语游戏官网入口
Win10如何恢复误删的快捷方式_Win10重建常用软件快捷方式
解决 Express.js 中 PUT 请求密码修改失败的路由配置指南
移动端XML文件怎么转换成Excel 手机和平板上的解决方案
如何有效阻止外部脚本意外修改内联样式的高度属性
曝R星经典之作开发图 设计简陋但信息密集!
漫蛙2在线漫画入口 漫蛙正版漫画网页版直达
J*aScript中正确使用querySelectorAll与复杂CSS选择器
漫蛙Manwa2官网入口地址分享 漫蛙漫画PC版永久访问通道
深入理解与实现最大堆的Heapify过程:常见错误与修正
vivo手机互传视频怎么操作_vivo手机互传视频详细传输方法
《GTA6》开发画面疑似泄露!这次可不是AI了
MAC的“快捷指令”怎么同步到iPhone_MAC利用iCloud同步所有设备的自动化指令
痛风发作了怎么办? 快速止痛和后期饮食调理
反效果?《战地6》免费试玩开启后玩家数不升反降
抖音网页版怎么|直播|_抖音网页版开播操作指南
QQ邮箱在线登录平台 QQ邮箱个人邮箱网页版入口
Node.js 中使用 node-cron 实现定时 API 数据抓取与处理
怎么在mac上运行html代码_mac运行html代码方法【指南】
如何在CSS中使用visited与link控制链接颜色_visited link伪类配合
解决J*aScript中重复选择项的确认对话框显示问题
html网页设计源代码怎么运行_运行html网页设计源代码步骤【指南】
vivo云服务网页版登录 怎么登录vivo云服务网页版
uc手机浏览器网页版入口 uc浏览器手机版便捷登录首页
汽水音乐车机版横屏版7.1 汽水音乐车机版横屏版下载入口
大麦的“候补”是什么意思 大麦候补购票规则【详解】
快手官方唯一登录入口 谨防山寨钓鱼网站
Python实现多节点属性重叠度分析教程
在VS Code中配置和运行Dart程序的完整步骤
为什么简单的XML文件也会解析失败? 检查隐藏的非打印字符(如BOM)的方法
抖音未来赚钱的新趋势 2025年值得关注的变现风口分析
PyTorch模型训练准确率不提升:诊断与修复常见指标计算错误
c++中的std::basic_string的SSO优化_c++短字符串优化深度解析
C++的std::forward_list怎么用_C++ STL中单向链表容器的特点与应用
Pandas DataFrame:高效添加条件计算列
Linux如何排查内存不足OOME问题_LinuxOOM分析教程
抖音DOU+怎么投最有效 抖音付费推广的ROI提升技巧
在Blazor WebAssembly应用中动态注入客户端特定指标代码的策略
抖音商城签到领现金是真的吗_抖音商城签到奖励与提现说明
在J*a里如何理解依赖关系的方向_依赖方向在模块结构中的作用
Golang如何使用const iota_Go iota常量计数器讲解


2025-12-06
浏览次数:次
返回列表