我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

在编写node程序的时候,经常会碰到需要开启两个命令行的时候,比如一个server一个client。这个时候,一般就需要开启两个终端命令,一个用于执行server命令,一个用于执行client命令。然后再打开浏览器,看效果。操作上还是有进步的空间。本文就说一下这种情况的解决方案。

苏南大叔:如何利用concurrently配置package.json,并行运行多任务? - concurrently
如何利用concurrently配置package.json,并行运行多任务?(图4-1)

大家好,这里是苏南大叔的“程序如何灵动”博客,这里记录苏南大叔和计算机代码的故事。本文描述可以同时运行多个命令的node工具concurrently。测试环境:win10node@16.14.2npm@8.3.0concurrently@7.1.0concurrently是并行执行任务的!并行!同时执行!理论上没有先后顺序区分。

安装命令

github主页地址:

苏南大叔:如何利用concurrently配置package.json,并行运行多任务? - concurrently-github
如何利用concurrently配置package.json,并行运行多任务?(图4-2)

这款concurrently命令,是使用npm安装的。全局安装完成后,可以直接在终端命令里面使用,完全脱离node的体系。

npm i concurrently -g

也可以配置在package.json里面的scripts字段里,在node项目里面,配置packages.json字段里面使用。

npm i concurrently --save-dev

基本使用方式是:

concurrently "command1 arg" "command2 arg"
全局安装-g还是--save(默认)/--save-dev(推荐),就看自己的需求而定了。

任务说明

本范例中,一共两个任务。
第一个任务是开启api服务器。具体内容可以参考:

脚本定义:

"scripts": {
    "api": "node api.js",
}

执行命令:

npm run api

第二个任务是基于react的默认范例。任务命令是:npm run start。改造后可以请求上述接口服务。具体内容可以参考:

脚本定义:

"scripts": {
    "start": "react-scripts start",
}

执行命令:

npm run start

合并任务

利用利用concurrently同时执行上述两个命令,下面这些命令都是可以执行的。

"scripts": {
    "api": "node api.js",
    "start": "react-scripts start",
    "con": "concurrently \"node api.js\" \"react-scripts start\" ",
    "con1": "concurrently \"npm run api\" \"npm run start\" ",
    "con2": "concurrently \"npm:api\" \"npm:start\" ",
}

苏南大叔:如何利用concurrently配置package.json,并行运行多任务? - pageage-json
如何利用concurrently配置package.json,并行运行多任务?(图4-3)

如果要执行的任务都有同样的前缀的话,也可以使用通配符。

"scripts": {
    "task1_api": "node api.js",
    "task1_start": "react-scripts start",
}

那么,可以通配符可以这样定义:

"scripts": {
    "con3": "concurrently "npm:task1_*"",
}

苏南大叔:如何利用concurrently配置package.json,并行运行多任务? - 运行结果
如何利用concurrently配置package.json,并行运行多任务?(图4-4)

在官方的说明里面,还有更多配置说明。但是,苏南大叔觉得也用不到。大家需要的话,来这边看看即可。

综述

concurrently不会写太多文章,这里是第一篇文章,所以整体归入node类别。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   node    concurrently