在 npm 脚本中将 shell 环境变量作为参数传递

hel*_*ldt 6 node.js npm

我试图将环境变量作为参数传递给 npm 脚本,但没有成功。

export ENVIRONMENT=test.proxy.json
npm run test
Run Code Online (Sandbox Code Playgroud)

我正在尝试在 package.json 中做这样的事情

npm run test --proxy-config-file $ENVIRONMENT
Run Code Online (Sandbox Code Playgroud)

rsp*_*rsp 8

当你这样做时:

export ENVIRONMENT=test.proxy.json
npm run test
Run Code Online (Sandbox Code Playgroud)

或这个:

ENVIRONMENT=test.proxy.json npm run test
Run Code Online (Sandbox Code Playgroud)

然后您将"test.proxy.json"字符串作为名为 的环境变量的值传递ENVIRONMENT

如果要将参数传递给 npm 脚本,则可能需要使用:

npm run test -- --proxy-config-file $ENVIRONMENT
Run Code Online (Sandbox Code Playgroud)

请记住,如果您将参数传递给 npm 脚本,并不一定意味着它将传递给该脚本正在执行的其他脚本。对于环境变量,情况正好相反——默认情况下,它们应该从一个脚本传递到另一个脚本,但仍然无法保证,因为调用者可能会决定要传递哪些环境变量(如果有)。

但是很难从你的问题中看出你真正的问题是什么——“没有成功”这句话太笼统了,不知道这里的问题是什么。