前端项目集成lint-staged

lint-staged

(lint-staged) 这个插件可以只针对进入git暂存区中的代码进行代码格式检查与修复,极大提升效率,避免扫描整个项目文件,代码风格控制 eslint + prettier + stylelint 看这两篇文章

前端项目vue3项目集成eslint@9.x跟prettier
前端项目集成stylelint做css样式代码格式控制

安装

pnpm add lint-staged -D

配置文件

.lintstagedrc.json (项目根目录)

这里针对不同的文件格式运行不同的格式化脚本,这里要保证脚本的执行顺序,prettier应该放在最前面,在其修复好后,再由eslint或stylelint来查漏补缺。

tips: 这下面用到的stylelint跟prettier跟eslint是要安装,才能用对应的工具去做代码检查,按照我上面的那篇文章中《前端项目集成stylelint做css样式代码格式控制》并没有安装prettier,所以这里需要主动安装一下

bash 复制代码
pnpm add -D prettier
javascript 复制代码
{
  "*.{css,less}": ["stylelint --fix"],
  "*.{js,jsx,ts,tsx}": ["prettier --write", "eslint --fix"],
  "*.{vue,html}": ["prettier --write", "eslint --fix", "stylelint --fix"]
}

测试

可以在package.json中的scripts添加一条脚本命令

javascript 复制代码
  "scripts": {
    "lint-staged": "lint-staged",
  }

准备一些错误

利用文本编辑器人为制造一些错误,目前vscode正常提示了这些错误。比如:

a.ts
a.less
a.vue

添加到暂存区,并执行脚本

  1. 使用 git add . 将当前修改内容推送到暂存区中
  2. 调用之前定义的脚本 pnpm lint-staged

成功修改:


tips1:git reset 可以清空暂存区
tips2:如果发现某些文件并没有生效,可以重启编辑器,可能是当前文件预览缓存导致的,实际文件已经发生了更改。我在写这个文章测试的时候就遇到了,发现a.ts跟a.less都可以生效,但是a.vue无法生效,后来又发现当前项目中其他vue文件修改也不生效了,最后重启了编辑器,发现文件内容已经发生了修改,所以vscode之前还是显示的未修改的,虽然不理解为什么只有vue文件是这样的。😢

相关推荐
qq_5470261793 小时前
Flowable 工作流引擎
java·服务器·前端
刘逸潇20054 小时前
CSS基础语法
前端·css
吃饺子不吃馅4 小时前
[开源] 从零到一打造在线 PPT 编辑器:React + Zustand + Zundo
前端·svg·图形学
小马哥编程5 小时前
【软考架构】案例分析-Web应用设计(应用服务器概念)
前端·架构
鱼与宇6 小时前
苍穹外卖-VUE
前端·javascript·vue.js
啃火龙果的兔子6 小时前
前端直接渲染Markdown
前端
z-robot6 小时前
Nginx 配置代理
前端
用户47949283569156 小时前
Safari 中文输入法的诡异 Bug:为什么输入 @ 会变成 @@? ## 开头 做 @ 提及功能的时候,测试同学用 Safari 测出了个奇怪的问题
前端·javascript·浏览器
没有故事、有酒6 小时前
Ajax介绍
前端·ajax·okhttp
朝新_6 小时前
【SpringMVC】详解用户登录前后端交互流程:AJAX 异步通信与 Session 机制实战
前端·笔记·spring·ajax·交互·javaee