使用脚本整合指定文件/文件夹,执行定制化 ESLint 命令

背景

最近面对一个庞大的项目,但是只需要修改某个模块,每次都手搓命令太麻烦了,于是就想着能不能写个脚本来辅助处理这些事情。

解决方案

定制化一键 ESLint,执行文件下载地址:

https://github.com/mazeyqian/go-gin-gee/releases/tag/v1.4.0

基础使用

以下案例以 macOS 为例,其他系统自行替换对应的文件。

案例 1:指定文件 file1.jsfile2.js,使用默认的配置。

bash 复制代码
#!/bin/bash
./eslint-files-mac-darwin-amd64 -files="file1.js,file2.js"

案例 2:指定文件夹 src/viewssrc/components

bash 复制代码
#!/bin/bash
./eslint-files-mac-darwin-amd64 -folders="/root/app/src/views,/root/app/src/components"

配合根目录 root 使用指定文件夹:

bash 复制代码
#!/bin/bash
./eslint-files-mac-darwin-amd64 \
  -folders="src/views,src/components" \
  -root="/root/app/"

案例 3:指定 ESLint 配置文件 custom.eslintrc.js 和命令 --fix

bash 复制代码
#!/bin/bash
./eslint-files-mac-darwin-amd64 \
  -folders="/root/app/src/views" \
  -esConf="custom.eslintrc.js" \
  -esCom="--fix"

复杂场景

  1. 指定 ESLint 配置文件 custom.eslintrc.js
  2. 指定附带命令 --fix
  3. 指定文件和文件夹;
  4. 指定文件后缀;
  5. 添加前置和后置执行命令。
bash 复制代码
#!/bin/bash
./eslint-files-mac-darwin-amd64 \
  -files="file1.js,file2.js" \
  -folders="src/views,src/components" \
  -root="/root/app/" \
  -esConf="custom.eslintrc.js" \
  -esCom="--fix" \
  -ext=".js,.ts,.jsx,.vue,.tsx" \
  -befCom="echo 'Starting format';" \
  -aftCom="echo 'Format completed';"

参数说明

参数 说明 默认 示例 是否必须
files 指定文件,多个文件用 , 分隔。 - file1.js,file2.js 可选
folders 指定文件夹,多个文件夹用 , 分隔。 - src/views,src/components 可选
esConf 指定 ESLint 配置文件。 - custom.eslintrc.js 可选
esCom 指定附带命令。 - --fix 可选
root 指定根目录,配合 folders 使用。 - /root/app/ 可选
ext 指定文件后缀。 .js .js,.ts,.jsx,.vue 可选
befCom 指定前置执行命令。 - echo 'Starting format'; 可选
aftCom 指定后置执行命令。 - echo 'Format completed'; 可选
filesRang 指定文件范围,统计处理过和未处理的文件。 - /root/app/ 可选

演示效果

项目地址

该脚本使用 Go 语言开发,访问地址:

https://github.com/mazeyqian/go-gin-gee/tree/main/scripts/eslint-files

版权声明

本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者后除和本文原始地址:https://blog.mazey.net/4207.html

(完)

相关推荐
工呈士11 分钟前
CSS in JS:机遇与挑战的思考
javascript·css
至尊童13 分钟前
五个JavaScript 应用技巧
javascript
举个栗子dhy17 分钟前
编辑器、代码块、大模型AI对话中代码复制功能实现
javascript
hyyyyy!18 分钟前
《从分遗产说起:JS 原型与继承详解》
前端·javascript·原型模式
晓龙的Coding之路19 分钟前
如何通过git删除某个文件的历史提交记录
git·git删除指定文件log
互联网搬砖老肖20 分钟前
运维打铁:域名详解及常见问题解决
运维·github
六边形66621 分钟前
一文搞懂JavaScript 与 BOM、DOM、ECMAScript、Node.js的用处
前端·javascript·面试
Mars狐狸27 分钟前
你踩过console.log的坑吗?从performace说起
前端·javascript
学习机器不会机器学习2 小时前
深入浅出JavaScript常见设计模式:从原理到实战(2)
开发语言·javascript·设计模式
富能量爆棚2 小时前
如何搭建spark yarn 模式的集群
大数据·javascript·spark