Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 重写npm项目的“npm安装”脚本_Node.js_Npm - Fatal编程技术网

Node.js 重写npm项目的“npm安装”脚本

Node.js 重写npm项目的“npm安装”脚本,node.js,npm,Node.js,Npm,我有一个NPM项目,当运行NPM安装时,我想运行一个自定义脚本 我尝试在package.json中使用此选项: "scripts": { "ng": "ng", "start": "ng serve", "install": "./scripts/install.sh", // <<<< }, 使用preinstall在npm安装之前运行代码。不要试图以这种方式覆盖npm install,因为这样会导致对npm install的调用无限循环

我有一个NPM项目,当运行
NPM安装
时,我想运行一个自定义脚本

我尝试在package.json中使用此选项:

"scripts": {
    "ng": "ng",
    "start": "ng serve",
    "install": "./scripts/install.sh",   // <<<<
 },

使用
preinstall
npm安装之前运行代码。不要试图以这种方式覆盖
npm install
,因为这样会导致对
npm install
的调用无限循环


您还可以使用
package.json
config
属性设置环境变量。有关详细信息,请参见“postinstall”:“yourScript”?很遗憾,修改postinstall对我的用例不起作用,因为我需要为我的安装脚本设置一些环境变量。我认为预安装脚本可能会起作用,如果我的预安装脚本的env变量也被install使用?是的,很抱歉您需要预安装,是的,我认为环境变量也会被持久化以用于安装,请尝试一下。对于找到此答案的人,它是
preinstall
-
#!/usr/bin/env bash

export FOO="bar";
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD="true";

npm install