我有一个NPM项目,运行npm install
时,我想运行自定义脚本。
我尝试在package.json中使用它:
"scripts": {
"ng": "ng",
"start": "ng serve",
"install": "./scripts/install.sh", // <<<<
},
但实际上只是导致无限循环。
我正在寻找这个的原因是因为有些工具可以简单地调用npm install
,所以我无法控制它们运行的内容。否则,如果我有控制权,我只会自己打电话给./scripts/install.sh
。
请注意,这可能不是最好的主意,只是好奇它是否可能。
请注意我的安装脚本如下所示:
#!/usr/bin/env bash
export FOO="bar";
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD="true";
npm install
答案 0 :(得分:8)
使用preinstall
在npm install
之前运行代码。不要试图以这种方式覆盖npm install
,最终会导致对npm install
的无限循环调用。
您还可以使用config
的{{1}}属性设置环境变量。有关详细信息,请参阅docs