我想要做的是当我运行npm run dev
执行这两项任务时,我需要等待5秒直到下一个任务运行。
运行npm run server
等待5秒,然后npm run client
"scripts": {
"start": "node ./bin/www",
"server": "nodemon start",
"client": "gulp",
"dev": "concurrently 'npm run server' 'npm run client'",
}
答案 0 :(得分:4)
假设您使用的是Linux,则可以使用sleep命令:
"dev": "concurrently 'npm run server' 'sleep 5 && npm run client'"
答案 1 :(得分:1)
添加@TGrif答案,链接脚本带双&符号&&以顺序执行它们。因此,首先执行 sleep 命令,然后输入&& ,然后编写 npm run client 。因此,第二个命令( npm run client )将仅在第一个命令( sleep )完成时执行。
答案 2 :(得分:1)
根据这些任务的作用,您可能不需要concurrently
。您也许可以只使用&
来运行其中一个作为后台任务就可以摆脱困境。
一般模式如下:
( sleep 5 && delayed_command ) & immediate_command
因此,在您的情况下,它看起来像这样:
"dev": "( sleep 5 && npm run client ) & npm run server"
如果您不希望其中一个命令的输出,可以在命令后添加> /dev/null 2>&1
,如下所示:
"dev": "( sleep 5 && npm run client > /dev/null 2>&1 ) & npm run server"