我的package.json文件中有一个脚本标记:
"scripts": {
"postinstall": "<command>"
}
每当我运行npm install
时,postinstall命令都会正常运行。
但是,如果我将参数传递给npm install
命令,例如在安装新软件包时:npm install <dependency> --save-dev
。它不会运行postinstall
命令。
即使npm install
命令中有参数,有没有一种方法可以运行postinstall?
答案 0 :(得分:1)
我认为你对包的实际工作方式感到困惑。包具有自己的依赖关系,安装后和预安装。当您安装这样的包时:
npm install <dependency>
这将查看要安装的软件包并将其与其依赖项一起安装,如果要安装的软件包具有preinstall
或postinstall
命令,则会调用它们。但仅针对该套餐,而不是您的。
执行npm install
时,这是安装您的包,因此会调用您的包的postinstall
命令。