按顺序运行npm脚本时忽略错误

use*_*871 10 bash command-line sh node.js npm

每当我构建要服务的项目时,我都必须执行三个脚本:

npm run build:local     //calls tsc to compile ts into js files
npm run build:webpack   //invokes webpack to bundle js files into one minified file 
npm run serve           //runs my lite-server to preview files
Run Code Online (Sandbox Code Playgroud)

我想按顺序运行这些命令:

npm run build:local && npm run build:webpack && npm run serve
Run Code Online (Sandbox Code Playgroud)

但是,由于需要在我的ts文件中包含一些JQuery,我在npm run build:local抛出时会收到错误Cannot find name '$'.但是,我的代码仍会编译它,并且该行对我的项目至关重要,所以它需要在那里(现在).该错误会停止脚本的顺序执行.有没有办法忽略错误并继续执行链?

All*_*uce 17

试一试:

npm run build:local ; npm run build:webpack && npm run serve
Run Code Online (Sandbox Code Playgroud)

我认为&&意思是"如果最后一个命令没有错误,则只运行下一个命令." 并且;意思是"无论最后一个命令发生了什么,都要运行下一个命令." 还有||,这意味着"只有在最后一个命令出错时才运行下一个命令".这对于像这样的事情来说很方便npm run build:local || echo "The build failed!"


小智 5

你可以去

npm run build:local; npm run build:webpack; npm run serve
Run Code Online (Sandbox Code Playgroud)

您可以在这里阅读更多为什么它有效的信息