我正在开发环境中运行节点服务器,但在服务器文件中显示出意外行为
我的剧本是休耕:

var env = process.env.NODE_ENV;
console.log("------------------------------");
console.log("envenv",typeof env,env);
console.log("0",typeof env);
console.log("00",env);
console.log("2",env.toString()=='development');
console.log("3",""+env.toString()=='production');
console.log("2",env==='development');
console.log("3",env=="production");
console.log("------------------------------");

但它提供了以下输出
------------------------------
envenv string 'development'
0 string
00 'development'
2 false
3 false
2 false
3 false
------------------------------

当我试着去做任何一件事情的时候
var env = process.env.NODE_ENV.trim();
var env = process.env.NODE_ENV.toLowerCase();
var env = process.env.NODE_ENV.replace("","");

.............

或字符串类原型中除toString()之外的任何方法
它工作得很好

最佳答案

环境变量node_env包含多余的'。设置环境变量时出错。供Windows系统使用

> SET NODE_ENV=development

而不是
> SET NODE_ENV='development'

这应该能解决问题。
要获取在命令行上打印的node_env的当前值,请使用
> echo %NODE_ENV%

应该印出来
> development

没有“或”

关于node.js - process.env.NODE_ENV仍在开发中,但仍显示意外行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35079476/

10-09 20:56