parallel-wait-run, 一个并行运行多个 npm scripts 的小工具

它是什么

parallel-wait-run支持同时运行多个npm scripts,并且可以通过自定义的异步函数控制每一个npm scripts的启动时机。

上述终端运行截图的仓库地址

安装

bash 复制代码
# npm
npm install -D parallel-wait-run

# pnpm
pnpm add -D parallel-wait-run

# yarn
yarn add -D parallel-wait-run

配置

在项目根目录添加配置文件 parallel.config.ts(也支持其他JSTS扩展名)

ts 复制代码
import { defineConfig } from "parallel-wait-run";

export default defineConfig({
  scripts: [
    {
      name: "dev",
      command: `dev command`,
      wait: async () => {
        sleep(1000);
        return true;
      },
    },
    {
      name: `unit-test`,
      command: `unit-test command`,
      wait: async () => {
        sleep(2000);
        return true;
      },
    },
  ],
});

也支持使用函数生成配置

ts 复制代码
import { defineConfig } from "parallel-wait-run";

export default defineConfig(({ mode, root }) => {
  return {
    scripts: [
      {
        name: "dev",
        command: `pnpm  dev`,
      },
      {
        name: `unit-test`,
        command: `pnpm test-watch`,
      },
    ],
  };
});

异步函数也是支持的

ts 复制代码
import { defineConfig } from "parallel-wait-run";

export default defineConfig(async ({ mode, root }) => {
  return {
    scripts: [
      {
        name: "dev",
        command: `pnpm  dev`,
      },
      {
        name: `unit-test`,
        command: `pnpm test-watch`,
      },
    ],
  };
});

运行

bash 复制代码
# npm
npm run parallel

# pnpm
pnpm parallel

# yarn
yarn parallel

更多配置内容,请参考文档

相关推荐
a11177625 分钟前
医院挂号预约系统(开源 Fastapi+vue2)
前端·vue.js·python·html5·fastapi
0思必得041 分钟前
[Web自动化] Selenium处理iframe和frame
前端·爬虫·python·selenium·自动化·web自动化
行走的陀螺仪2 小时前
uni-app + Vue3编辑页/新增页面给列表页传参
前端·vue.js·uni-app
摘星编程3 小时前
React Native + OpenHarmony:Spinner旋转加载器
javascript·react native·react.js
We་ct3 小时前
LeetCode 205. 同构字符串:解题思路+代码优化全解析
前端·算法·leetcode·typescript
2301_812731414 小时前
CSS3笔记
前端·笔记·css3
ziblog4 小时前
CSS3白云飘动动画特效
前端·css·css3
越努力越幸运5084 小时前
CSS3学习之网格布局grid
前端·学习·css3
半斤鸡胗4 小时前
css3基础
前端·css
ziblog4 小时前
CSS3创意精美页面过渡动画效果
前端·css·css3