package.json脚本条件

我有一个节点脚本,检查一些条件。 让我们把它叫做condition.js 。 我有另一个脚本运行我的程序,让我们叫它runner.jsrunner.js被脚本下的package.json文件中的命令引用,以及带有自己命令的condition.js 。 我想在runner.js之前运行runner.js 。 如果在condition.js运行时某个条件为真(它检查某个string),我希望第二个脚本在它之后运行。 如果不是这样,我不希望第二个脚本运行。 我怎么能在package.json做到这一点?

condition.js您需要使用非零的退出代码exit() Node进程。 然后在你的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 specialrunner.js文件将只在condition.js以零代码退出时运行(如果节点执行正常结束,则为默认值)。