我正试图在npm脚本中访问环境变量,如下所示:
"scripts": {
"test": "istanbul cover node_modules/.bin/_mocha --root ../SERVER/routes -- --recursive"
},
然后像这样开始这个脚本:
SERVER=somewhere npm test
如何在package.json本身的npm脚本中获取SERVER
变量的已解析值?
答案 0 :(得分:3)
对于Windows用户,您可以这样使用变量:%SERVER%
而不是$SERVER
。
或更佳的使用cross-env
module的方法,它将允许您像在所有平台上的linux一样:
npm i cross-env
并使用它:
"scripts": {
"test": "cross-env-shell \"istanbul cover node_modules/.bin/_mocha --root ../$SERVER/routes -- --recursive\""
}
答案 1 :(得分:0)
最好使用env
并使用process.env
获取脚本内的值。这是一种广泛使用的做法。
package.json
只是一个json文件,它甚至不允许注释,所以我不建议使用这种方法。
答案 2 :(得分:-1)
使用$SERVER
会为你工作吗?
"scripts": {
"test": "istanbul cover node_modules/.bin/_mocha --root ../$SERVER/routes -- --recursive"
}