Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js环境检测不工作_Node.js - Fatal编程技术网

Node.js环境检测不工作

Node.js环境检测不工作,node.js,Node.js,我在Node.js项目上工作了几个月,由于某种原因,我设置的逻辑停止工作。我不确定从哪里开始调试这个问题。我的解决办法是在投入生产时对开发线进行注释 var env = process.env.NODE_ENV = process.env.NODE_ENV || 'development'; if(env === 'development'){ mongoose.connect('mongodb://localhost:27017/mean-demo'); }else{ m

我在Node.js项目上工作了几个月,由于某种原因,我设置的逻辑停止工作。我不确定从哪里开始调试这个问题。我的解决办法是在投入生产时对开发线进行注释

var env = process.env.NODE_ENV = process.env.NODE_ENV || 'development';

if(env === 'development'){
    mongoose.connect('mongodb://localhost:27017/mean-demo');
  }else{
    mongoose.connect('mongodb://username:password@ds043270.mongolab.com:ds043270/location');
} 

第一行应该是
var env=process.env.NODE_env | |“development”,虽然我想这并不重要。。。但如果要使用
env
,则不确定为什么需要设置process.env.NODE\u env

另外,请确保您的环境没有意外设置,请使用本文中的说明:将其设置为
development


但除此之外,您可能会发现类似的模块很有用。基本上,您可以创建一个
.env
文件,该文件具有类似Mongo URL详细信息的属性,并且不会提交给源代码管理。在每个环境中保留一个
.env

您确定要通过指定与以前相同的节点\u ENV来启动节点进程吗?。i、 你是在打
$NODE\u ENV=prod NODE index.js
还是类似的电话?谢谢!运行后,代码更正效果良好。然而,据我所知,不将.env文件签入源代码管理的方法在Heroku上不起作用,因为将文件签入Heroku的通常工作流包括将它们签入并推送到Heroku。