当前位置: 首页 > news >正文

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

背景

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

解决方案

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

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

Assets

基础使用

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

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

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

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

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

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

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

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

#!/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. 添加前置和后置执行命令。
#!/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/可选

演示效果

ESLint Files

项目地址

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

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

版权声明

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

(完)

http://www.lryc.cn/news/218740.html

相关文章:

  • C++ static与类
  • 数据结构之堆的实现(图解➕源代码)
  • 持续集成部署-k8s-配置与存储-配置管理:ConfigMap
  • 【漏洞复现】Apache_HTTP_2.4.50_路径穿越漏洞(CVE-2021-42013)
  • 【KVM】软件虚拟化和硬件虚拟化类型
  • ES-初识ES
  • foreach、for in和for of的区别?
  • CVE-2023-21839 weblogic rce漏洞复现
  • MQTT java代码演示
  • Windows环境下使用VLC获取到大疆无人机的RTMP直播推流
  • 【SpringBoot笔记42】SpringBoot集成knife4j生成接口文档
  • Go类型嵌入介绍和使用类型嵌入模拟实现“继承”
  • 【深度学习】pytorch——实现CIFAR-10数据集的分类
  • Datawhale-AIGC实践
  • C++对象模型
  • Linux Framebuffer驱动框架、接口实现和使用
  • AI:54-基于深度学习的树木种类识别
  • MVCC详解
  • [pytorch]手动构建一个神经网络并且训练
  • 马斯克的X.AI平台即将发布的大模型Grōk AI有哪些能力?新消息泄露该模型支持2.5万个字符上下文!
  • spring-session-core排除某些接口不设置session
  • 【ElasticSearch系列-05】SpringBoot整合elasticSearch
  • C/S架构学习之广播
  • 帧间快速算法论文阅读
  • mooc单元测验第一单元
  • AOC显示器出问题了?别担心,简单重置一下就OK了
  • ok-解决qt5发布版本,直接运行exe缺少各种库的问题
  • 【JavaEE】cookie和session
  • 关于CSS的几种字体悬浮的设置方法
  • 心脏骤停急救赋能