vue react项目结合xima进行代码提交前eslint检测,git commit拦截

编程入门 行业动态 更新时间:2024-10-28 18:28:34

vue react项目结合xima进行<a href=https://www.elefans.com/category/jswz/34/1771412.html style=代码提交前eslint检测,git commit拦截"/>

vue react项目结合xima进行代码提交前eslint检测,git commit拦截

vue react项目结合xima进行eslint检测及修复

目前新进了一个项目,需要搭建框架对前端代码规范进行约束,不符合规范的无法提交git commit,保证了代码的质量,这里记录一下搭建过程哦

使用xima

  • 什么是xima

    xima 是《集团前端规约》的配套工具,可以为工程一键接入规约、一键扫描和修复规约问题,保障工程的编码规范和代码质量。简而言之是一个帮我们检测出项目中的eslint的错误以及自动修复eslint的npm包,

  • xima如何使用

    在终端执行:

    npm install xima -g项目中加入ximanpm i xima -D安装各种依赖:如工具依赖,包括 ESLint、stylelint、commitlint 等;配置依赖,包括 eslint-config-ali、stylelint-config-ali、@commitlint/config-ali 等写入各种配置文件(到工程根目录):包括 .eslintrc.js、.eslintignore、.stylelintrc.js、.stylelintignore、commitlint.config.js、.prettierrc.js、.editorconfig、.vscode/settings.json 等;此外还会写入一个 xima.config.js 文件,包含 xima 工具的一些配置,如启用的功能、黑名单等配置 git commit 卡点:使用 husky + lint-staged 设置代码提交卡点,在 git commit 时会运行 xima scan,若有规约问题则阻止提交 

安装配置为

 "devDependencies": {"xima": "^0.3.0","lint-staged": "^10.0.7","eslint":"6.7.2","eslint-config-ali":"^12.1.0","stylelint":"^13.13.1","stylelint-config-ali":"^0.4.1","stylelint-config-standard":"^22.0.0","stylelint-scss":"^3.19.0"},
  • xima scan:一键扫描

在工程的根目录执行命令,即可扫描工程的代码规约问题:

  • xima fix:一键修复
    在工程的根目录执行命令,即可自动修复工程的代码规约问题:

package.json的script中添加

    "xima-scan": "xima scan","xima-fix": "xima fix"

commit-m 命名规范拦截 husky使用

  • 在做前端工程化时husky可以说是一个必不可少的工具。husky可以让我们向项目中方便添加git hooks。通常情况下我只需要如下两步就可在项目中引入并设置好husky:

  • 将husky添加到项目的开发依赖中

    npm install -D husky
  • 使用husky对git上传进行拦截,相当于git hooks钩子
    package.json添加
 "husky": {"hooks": {"commit-msg": "xima exec commitlint -E HUSKY_GIT_PARAMS","pre-commit": "xima exec lint-staged"}}

git commit-m检测eslint及stylelint并拦截

在我们介绍了Husky、Commitlint之后,来看一个前端文件过滤的工具Lint-staged,代码的格式化肯定会涉及到文件系统,一般工具会首先读取文件,格式化操作之后,重新写入。对于较大型的项目,文件众多,首先遇到的就是性能问题,虽然如Eslint之类的也有文件过滤配置,但毕竟还是对于匹配文件的全量遍历,如全量的.js文件,基本达不到性能要求,有时还会误格式化其他同学的代码,因此我们引入Lint-staged,一个仅仅过滤出Git代码暂存区文件(被committed的文件)的工具。

    npm install --save-dev lint-staged husky

首先明确一下,Lint-staged仅仅是文件过滤器,不会帮你格式化任何东西,所以没有代码规则配置文件,需要自己配置一下,如:.eslintrc、.stylelintrc等,然后在package.json中引入。

"gitHooks": {"pre-commit": "lint-staged"},"lint-staged": {"**/*.{js,jsx,ts,tsx}": "xima exec eslint","**/*.{css,scss,less,acss}": "xima exec stylelint"},

项目中配置对应文件



项目提交git时效果

更多推荐

vue react项目结合xima进行代码提交前eslint检测,git commit拦截

本文发布于:2024-02-23 08:38:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1695272.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:代码   项目   vue   react   xima

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!