我有一个节点脚本来检查某些条件。让我们称之为condition.js
。我有另一个运行我的程序的脚本,我们称之为runner.js
。 runner.js
在我的package.json
文件中的脚本以及condition.js
中使用自己的命令引用。我希望condition.js
在runner.js
之前运行。如果condition.js
运行时某个条件为真(它检查字符串中的某些内容),我希望第二个脚本在它之后运行。如果不是这样,我不希望第二个脚本运行。我怎样才能在package.json
?
答案 0 :(得分:4)
在condition.js
中,您需要使用非零退出代码exit()
节点进程。然后在package.json
文件中,您可以检查是否根据退出代码执行第二个脚本(零或不):
在condition.js
文件中:
if (true) { // use your actual condition
process.exit(128);
}
然后,在package.json
:
{
"scripts": {
"special": "node condition.js && node runner.js"
}
}
现在您可以从命令行运行npm run special
,runner.js
文件只会在condition.js
以零代码退出时运行(如果节点执行正常结束,这是默认值)