npm一次性执行多条命令

需求场景

一套代码需要按照不同场景分别进行打包,每次都要执行对应的命令,有几条就要执行几次(手表示不想动)

如何解决:

一、npm并行or继发

npm脚本里面需要执行多个任务,那么需要明确他们的执行顺序

  1. 并行执行(即同时的平行执行),可以使用&符号;
  2. 继发执行(即只有前一个任务成功,才执行下一个任务),可以使用&&符号。
// package.json  sciptes中添加两个打包环境的命令
案例1:并发
"build:all": "vue-cli-service build --mode gather & vue-cli-service build --mode manager",
案例2:继发
"build:all": "vue-cli-service build --mode gather && vue-cli-service build --mode manager",

还可以拼接自定义方法,,当打完包后执行自定义的程序

"build:all": "vue-cli-service build --mode gather && node xxx.js",

阮一峰日志里举了很多npm的玩法,感兴趣可以看一下:走你

二、concurrently插件
// 首先进行安装
npm install concurrently --save
// package.json  sciptes中添加两个打包环境的命令
// vue-cli-service build --mode gather
// vue-cli-service build --mode manager
"all": "concurrently \"vue-cli-service build --mode gather\" \"vue-cli-service build --mode manager\"",

这样是并发执行脚本(吐槽:执行过程虽然跟卡住了一样不动,但其实过一会就直接完成了)

当然还有继发:

"all": "vue-cli-service build --mode gather && vue-cli-service build --mode manager",

更多玩法参考官网:走你

两种方式都可以实现同时执行多条命令的操作,就但这个功能而言,直接上npm命令连接吧~

Logo

前往低代码交流专区

更多推荐