AndreGeng/AndreGeng.github.io

npm scripts生命周期

AndreGeng opened this issue · 0 comments

npm scripts的生命周期其实还比较直观的(只是prepublish的行为略让人费解)具体文档可以见npm scripts
npm 4.0之前的版本当运行npm install时,npm scripts的生命周期如下

preinstall -> install -> postinstall -> prepublish

ps: prepublish在这里运行主要是,当npm install不加其它参数时,一般需要先准备执行环境,也就是要把上线前打包的操作再执行一次
但这个名字很让人困惑,所以这个钩子在npm 4.0以后被deprecated了,取而代之的生命周期钩子为:prepare ,prepublishOnly

目前在npm 6.0的情况下,运行npm install时执行的钩子函数如下:

preinstall -> install -> postinstall -> prepare

运行npm publish时执行的钩子函数如下:

 prepare -> prepublishOnly -> publish -> postpublish