主要npm脚本失败后如何运行npm脚本?

时间:2019-06-20 07:46:07

标签: npm npm-scripts

我的主要npm脚本是“ npm run build”。

我想要做的是编写另一个脚本,该脚本将在“ npm run build”失败时像执行异常处理中的捕获一样执行。

1 个答案:

答案 0 :(得分:2)

您可以在npm脚本中使用OR operator||)。 shcmd.exe都支持它,因此它可以跨平台工作。

package.json scripts部分中考虑以下示例:

"scripts": {
  "build": "<your build script here> || npm run fallback",
  "fallback": "echo \"Oops! Running another script....\""
},

说明:

  1. 您当前的构建脚本命令应替换<your build script here>脚本中的build部分。
  2. 仅当fallback运算符左侧的构建命令以非零退出状态退出(即失败)时,||脚本才会运行。
  3. 当您的构建脚本命令成功退出时(即退出代码为零),永远不会调用npm run fallback运算符右侧的||部分。
  4. "echo \"Oops! Running another script....\""脚本中的fallback应该替换为build失败时要执行的命令。

上面的示例主要利用另一个名为fallback的脚本进行说明,但是您只能使用一个build脚本,例如:

"scripts": {
  "build": "<your build script here> || echo \"Oops! Running another script...\""
},