lint-staged 10个实战示例:ESLint、Prettier、Stylelint、Flow完美组合套路
lint-staged 10个实战示例ESLint、Prettier、Stylelint、Flow完美组合套路【免费下载链接】lint-staged — Run tasks like formatters and linters against staged git files项目地址: https://gitcode.com/gh_mirrors/li/lint-stagedlint-staged 是一款流行的 Git 提交前检查工具当你git add暂存文件后它只对这些改动过的文件自动运行 ESLint、Prettier 等检查和格式任务并把修复结果自动加回提交。全文通过 10 个由浅入深的实战示例手把手教你把 lint-staged 与 ESLint、Prettier、Stylelint、Flow 组合成一套提交即干净的完美工作流新手也能 10 分钟配好。一、30 秒看懂 lint-staged 为什么好用 相比对整个项目跑一遍 lintlint-staged 只盯着要提交的改动带来四个直接好处快文件少任务秒级完成提交不再卡稳任务修改后的文件会自动重新暂存不会丢改动安全默认先创建 git stash 备份出错自动恢复原状灵活用 glob 匹配文件可以挂任意命令lint、format、甚至跑测试更多背景介绍见官方文档 README.md。二、一次性安装与配置最快上手 4 步 ⚙️npm install --save-dev lint-staged npx husky init然后在.husky/pre-commit里写入一行npx lint-staged最后在package.json中添加lint-staged配置对象注意不要传文件路径参数它会自动帮你拼接{ lint-staged: { *.{js,jsx}: eslint --fix } }至此每次git commit都会先跑检查不通过就自动拦截。项目自己的配置就长这样可以参考 lint-staged.config.js。三、10 个实战示例从入门到完美组合 ✨示例 1ESLint pre-commit 基础检查最基础的用法——提交前对暂存的 JS/JSX 文件做语法与规范检查有问题直接拦截提交{ *.{js,jsx}: eslint }示例 2ESLint --fix 自动修复可修复项加上--fix后分号、引号、未使用变量等问题会被自动修好修复结果自动加入本次提交你甚至感觉不到它的存在{ *.js: eslint --fix }示例 3Prettier 全量格式化任意文件--ignore-unknown让 Prettier 跳过自己不支持的文件一行配置覆盖整个仓库的格式统一{ *: prettier --ignore-unknown --write }示例 4Prettier 指定多语言文件只想格式化代码和文档类文件用花括号语法一次列出多扩展名{ *.{js,jsx,ts,tsx,md,html,css}: prettier --write }示例 5ESLint Prettier 黄金组合数组顺序执行⭐同一 glob 下想跑多个命令用数组表示按顺序串行先eslint --fix修逻辑问题再prettier --write统一格式顺序保证不会互相打架{ *.js: [eslint --fix, prettier --write] }这是最推荐的核心套路官方文档中的 Examples 章节 也以此为例。示例 6Stylelint 检查 CSS 与 SCSSCSS 有自己的语法检查器 Stylelint可按文件类型分别指定语法{ *.css: stylelint, *.scss: stylelint --syntaxscss }示例 7PostCSS 属性排序 Stylelint 复检用数组把排序和检查串起来先跑 PostCSS 的--replace原地排序再让 Stylelint 确认通过{ *.scss: [postcss --replace, stylelint] }示例 8Flow 类型检查只跑改动文件Flow 的focus-check命令天然适合 lint-staged——只检查你改动的文件速度远快于全量 check{ *.{js,jsx}: flow focus-check }示例 9函数式配置tsc 全量类型检查不传文件参数TypeScript 有个坑直接传文件名会让tsc忽略tsconfig.json。lint-staged 支持在函数里自定义命令——直接返回不带文件参数的命令即可// lint-staged.config.js export default { *.{ts,tsx}: () tsc --noEmit, }函数的完整类型定义可查 lib/config.d.ts。示例 10并行任务与 glob 冲突的终极解法 两个 glob 都写文件时会发生竞态如*跑 prettier、*.ts跑 eslint --fix 同时改一个文件。官方推荐用取反 glob 数组顺序彻底解决想提速时把命令再套一层数组即可并行执行{ !(*.ts): prettier --write, *.ts: [eslint --fix, prettier --write] }{ *.ts: [[prettier --write, eslint]], *.md: prettier --write }四、新手避坑速查表 场景建议想看全部任务的报错加--continue-on-error跑完再汇总失败调试我的文件为什么没被匹配加--debug查看文件列表与执行的命令monorepo 多包项目每个包放独立配置文件自动匹配最近的配置命令参数过长常见于 Windows用--max-arg-length控制分片升级大版本遇到不兼容查阅迁移指南 MIGRATION.md写在最后lint-staged 的价值不在于再装一个工具而是把ESLint 查规范、Prettier 管格式、Stylelint 管样式、Flow 管类型这四件事按正确的顺序编排到提交环节。从示例 1 开始逐步叠加你的仓库将在不知不觉中保持干净——不让任何代码便便溜进提交历史 。【免费下载链接】lint-staged — Run tasks like formatters and linters against staged git files项目地址: https://gitcode.com/gh_mirrors/li/lint-staged创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

老系统零代码接入AI:HTTP协议层桥接实战

老系统零代码接入AI:HTTP协议层桥接实战

1. 这不是“给老系统加个AI按钮”&#xff0c;而是给一台十年车龄的柴油机装上电控喷油系统十年前的 Java 老系统&#xff0c;不是“技术债”&#xff0c;是活化石。它跑在 JDK 1.6 上&#xff0c;用 Spring MVC 2.5 写的 Controller 层&#xff0c;JSP 页面里还嵌着<% new …

2026/9/19 5:34:29 阅读更多 →
杭州精密五金加工生产企业排名前五,广受信赖的制造厂家推荐

杭州精密五金加工生产企业排名前五,广受信赖的制造厂家推荐

东莞市时运佳五金有限公司是2003年成立的专业精密五金全链路制造企业&#xff0c;坐落于制造业名城东莞市大岭山镇马蹄岗工业区&#xff0c;是集精密五金冲压件生产、精密CNC数控车加工、注塑加工和成品组装服务于一体的生产型实体&#xff0c;长期以来为各行业客户提供高精密、…

2026/9/19 5:33:29 阅读更多 →
常州口碑好的塑料粉碎机供应商推荐,合作实力参考

常州口碑好的塑料粉碎机供应商推荐,合作实力参考

塑料粉碎机选型入门&#xff1a;先搞懂这3个核心底层逻辑很多做塑胶加工、锂电配套或者食品原料处理的朋友&#xff0c;一开始选塑料粉碎机时容易犯难&#xff1a;明明是同一款机型&#xff0c;有人用着静音高效&#xff0c;有人却天天抱怨卡料、粉尘满天飞。其实塑料粉碎机的核…

2026/9/19 5:33:29 阅读更多 →

最新新闻

揭秘购物网站排行榜背后的3个免费工具与避坑指南

揭秘购物网站排行榜背后的3个免费工具与避坑指南

揭秘购物网站排行榜背后的3个免费工具与避坑指南 找建站公司怕被坑高价?别急,先看看这3个免费工具,能帮你省下一半冤枉钱。很多老板一上来就问报价,结果被销售忽悠着加了各种“高级功能”,最后花了大几万,做出来的网站连个像样的产品排行榜都跑不动。…

2026/9/19 6:58:40 阅读更多 →
具身智能培训机构避坑指南:从岗位画像到实战筛选方法

具身智能培训机构避坑指南:从岗位画像到实战筛选方法

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/19 6:58:06 阅读更多 →
Atlas 300V 24G推理加速卡部署YOLOv5/YOLOv8全指南

Atlas 300V 24G推理加速卡部署YOLOv5/YOLOv8全指南

最近问 Atals 300V 24G 的人突然多了起来&#xff0c;而且问题高度集中&#xff1a;atlas 300v 24g 是运算加速卡吗&#xff1f;能不能部署 yolov5/yolov8&#xff1f;我用它做视频流目标检测到底合适不合适&#xff1f;说实话&#xff0c;这类问题挺有代表性的。Atlas 300V 24…

2026/9/19 6:58:06 阅读更多 →
如何3分钟给网站加上零依赖粒子动画:tsParticles完全解析

如何3分钟给网站加上零依赖粒子动画:tsParticles完全解析

如何3分钟给网站加上零依赖粒子动画&#xff1a;tsParticles完全解析 【免费下载链接】tsparticles tsParticles - Easily create highly customizable JavaScript particles effects, confetti explosions and fireworks animations and use them as animated backgrounds for…

2026/9/19 6:58:06 阅读更多 →
计算机审计练习题精解:从PDF拆分到答案验算实战指南

计算机审计练习题精解:从PDF拆分到答案验算实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/19 6:58:06 阅读更多 →
CANN PTO-ISA 混合精度 Flash Attention 性能 Kernel 实践指南(Ascend A5)

CANN PTO-ISA 混合精度 Flash Attention 性能 Kernel 实践指南(Ascend A5)

CANN PTO-ISA 混合精度 Flash Attention 性能 Kernel 实践指南&#xff08;Ascend A5&#xff09; 【免费下载链接】pto-isa Parallel Tile Operation (PTO) is a virtual instruction set architecture designed by Ascend CANN, focusing on tile-level operations. This rep…

2026/9/19 6:58:06 阅读更多 →

日新闻

BP神经网络时序预测:滑窗长度与多窗口平均策略

BP神经网络时序预测:滑窗长度与多窗口平均策略

简介&#xff1a;面向机器学习、深度学习与数据建模学习者的一份完整研究文献&#xff0c;聚焦BP神经网络在农业产量预测中的应用。文档以1980—2018年全国棉花产量为样本&#xff0c;系统讲解数据归一化处理、激活函数原理、多层神经网络结构搭建及训练流程&#xff0c;展示敏…

2026/9/19 0:00:30 阅读更多 →
Transformer训练实时监控实战:基于MindSpore的损失曲线可视化方案

Transformer训练实时监控实战:基于MindSpore的损失曲线可视化方案

上个月调一个Deformable DETR模型&#xff0c;在单卡上要跑将近两天。第二天早上我下意识打开终端翻日志&#xff0c;发现loss从凌晨两点就开始往上爬&#xff0c;一路从0.8涨到1.35&#xff0c;整整六个小时没人发现。那六个小时的训练不仅白跑&#xff0c;还霸占着卡——等于…

2026/9/19 0:00:30 阅读更多 →
OpenCloud 中的 Go 类型安全转换库 spf13/cast:从零值回退到泛型 API 的完整实战指南

OpenCloud 中的 Go 类型安全转换库 spf13/cast:从零值回退到泛型 API 的完整实战指南

OpenCloud 中的 Go 类型安全转换库 spf13/cast&#xff1a;从零值回退到泛型 API 的完整实战指南 【免费下载链接】opencloud &#x1f324;️ OpenCloud is the open source platform for file management, sharing and collaboration. Simple and sovereign. 项目地址: htt…

2026/9/19 0:00:30 阅读更多 →

周新闻

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验

AI SDK Harness 依赖更新指南&#xff1a;掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验 【免费下载链接】ai The AI Toolkit for TypeScript. From the creators of Next.js, the AI SDK is a free open-source library for building AI-powered applications and ag…

2026/9/19 3:59:36 阅读更多 →
Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化

Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化

Refine v5 Ant Design NumberField 组件实战&#xff1a;基于 Intl 的本地化数字格式化 【免费下载链接】refine A React Framework for building internal tools, admin panels, dashboards & B2B apps with unmatched flexibility. 项目地址: https://gitcode.com/GitH…

2026/9/19 3:53:08 阅读更多 →
Flutter应用改名全指南:从Android到iOS的配置与工具实践

Flutter应用改名全指南:从Android到iOS的配置与工具实践

刚接一个外包项目时&#xff0c;甲方要求把工程里临时用的应用名改成正式产品名。我本来觉得“改名”这种小事&#xff0c;打开配置文件改一行不就完了&#xff1f;结果真动手才发现&#xff0c;Flutter项目里“应用名称”根本不是一处配置&#xff0c;而是一整套散落在 Androi…

2026/9/19 4:02:43 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践&#xff1a;原型怎样变成可用功能分类&#xff1a;[AI/大模型]细分主题&#xff1a;AI 增强型 CI/CD 流水线自动化与 GitOps 实践&#xff1a;Agent 工作流、工具调用与任务拆解&#xff1a;从原型到生产的验收清单很多团队在尝试用大…

2026/9/16 22:31:27 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战&#xff1a;复盘记录怎样真正派上用场分类&#xff1a;[工程技术]细分主题&#xff1a;Kubernetes 生产环境运维与排障实战&#xff1a;可复制的项目复盘模板与决策记录大部分团队的事故复盘报告&#xff0c;最后都变成了躺在 Confluence 或钉…

2026/9/15 21:39:18 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理&#xff1a;核心链路应该先拆哪一步分类&#xff1a;[工程技术]细分主题&#xff1a;Docker 容器化技术与镜像安全管理&#xff1a;核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用&#xff08;包含 Web 接口、后台…

2026/9/16 22:32:59 阅读更多 →