为什么我不能在 Node.js 应用程序中对环境变量执行条件
执行此 node.js 应用程序时
if(process.env.ENV_ARG === "someValue") {
console.log("conditional works...");
} else {
console.log(`ENV_ARG => ${process.env.ENV_ARG}`);
}
当我使用以下脚本
"scripts": {
"dev": "SET ENV_ARG=someValue && node index.js"
},
...输出为:
ENV_ARG => someValue
我无法理解为什么 if 语句的计算结果为 false。
当 process.env.ENV_ARG
的内容记录在 else 块中时,上面的 if 语句应该可以访问它们......至少我是这么认为......
提前致谢
When I execute this node.js application...
if(process.env.ENV_ARG === "someValue") {
console.log("conditional works...");
} else {
console.log(`ENV_ARG => ${process.env.ENV_ARG}`);
}
with the following script...
"scripts": {
"dev": "SET ENV_ARG=someValue && node index.js"
},
the output is:
ENV_ARG => someValue
I can't understand why the if statement evaluates to false.
When the contents of process.env.ENV_ARG
are logged in the else-block, they should be accessible for the if statement above...at least I thought so...
Thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个间距问题。环境变量末尾包含一个空格。
解决该问题的一种方法如下:
It's a matter of spacing. There is a space that gets included at the end of the environment variable.
One way to work around it is the following: