我们知道,在 package.json
的 scripts 字段可以设置很多自定义命令,然后通过 npm run xxx
来执行。
但值得注意的是如下的情况:
1{
2 "scripts": {
3 "prebuild": "echo ABC",
4 "build": "cross-env NODE_ENV=production webpack",
5 "postbuild": "echo 321"
6 }
7}
此时执行 npm run build
,实际上执行的则是:
1npm run prebuild && npm run build && npm run postbuild
npm 脚本有 pre
和 post
两个钩子,分别在目标命令的前后执行。这里便存在了一个陷阱,若 pre
钩子执行失败,那么后续的指令将不会继续执行。所以在编写 npm scripts 时,请务必留意是否有对应的钩子 scripts 存在。
参考链接
版权声明:本文遵循 CC BY-SA 4.0 版权协议,转载请附上原文出处链接和本声明。
Copyright statement: This article follows the CC BY-SA 4.0 copyright agreement. For reprinting, please attach the original source link and this statement.