[英]Cannot access NPM environment variables
在我的package.json中,我將名為“ foo”的配置變量設置為“ bar”,並且正在使用NPM腳本調用該變量。
"config": {
"foo": "bar"
},
"scripts": {
"test": "echo $npm_package_config_foo"
}
運行npm run test
應該輸出bar
,但是不輸出。
我懷疑我在訪問環境變量時遇到一般性問題。 例如,我可以從NPM腳本中使用uglifyjs,但不能從命令行中使用。
從命令行運行printenv
不會顯示任何人們期望的NPM變量。
設置:OSX 10.11.6,NPM 2.15.11,節點6.2.0。
您嘗試的是錯誤的:節點環境變量只能在節點進程中使用進程全局變量訪問,而不能在系統范圍內訪問。 因此,要實現所需的功能,請進行以下更改。
的package.json
"config": {
"foo": "bar"
},
"scripts": {
"test": "node ./app.js"
}
app.js
console.log(process.env.npm_package_config_foo);
您可以在這里找到更多信息
我的解決方案:
設置foo
使用npm config set foo bar
從我的package.json中刪除了配置對象。
在NPM scripts
屬性$npm_package_config_foo
$npm_config_foo
更改$npm_package_config_foo
$npm_config_foo
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.