使用脚本整合指定文件/文件夹,执行定制化 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

(完)

相关推荐
烬羽3 小时前
React Router v7 完全指南:一个 Demo 吃透前端路由
javascript·react.js·前端框架
烬羽3 小时前
从"整个页面刷新"到"丝滑切换":手写一个 HashRouter 彻底搞懂前端路由
javascript·前端框架·全栈
用户938515635073 小时前
从零理解 React Router v6:每一个 API 都是怎么工作的
前端·javascript·全栈
星蓝_starblue6 小时前
零服务器、零数据库!开源growth-board,利用GitHub自动管理刷题/学习/求职全流程
服务器·数据库·程序人生·系统架构·node.js·github·改行学it
夏天的峰没有风6 小时前
Typora加github加PicGo搭建图床使用教程
github·claude code
kyriewen6 小时前
别再这样写条件渲染了——你的React组件里藏着这5种定时炸弹
前端·javascript·react.js
Liekkas Kono7 小时前
Github Star History 趋势图工具推荐
github·swhl
梦想CAD控件7 小时前
网页端CAD的图形选择、编辑与夹点操作教程
前端·javascript·node.js
妙码生花7 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(五十二):管理员权限检查中间件,AI 随意放行预闯大祸
前端·后端·go
月月大王的3D日记7 小时前
Three.js 入门系列(8):六种光源全解析 —— 关灯了,开光!
前端·javascript