node 的NODE_ENV有什么用?

求解这个环境变量有什么用?

阅读 24.7k
2 个回答

通过NODE_ENV可以来设置环境变量(默认值为development)。
一般我们通过检查这个值来分别对开发环境和生产环境下做不同的处理。可以在命令行中通过下面的方式设置这个值:

  • linux & mac: export NODE_ENV=production
  • windows: set NODE_ENV=production

比方说如果代码中要对生产环境下做一些处理,可以这样写:

if (process.env.NODE_ENV === 'production') {
    // just for production code
}

app.js

jsif ('dev' === app.get('env')) {
    app.use(morgan('dev'))//中间件日志
    mongoose.set('debug', true);
}

设置环境变量,在terminal里面运行下面的命令就会有开发环境的调试数据,例如日志、mongodb的数据操作等等。一般我们通过检查这个值来分别对开发环境和生产环境下做不同的处理。

shellNODE_ENV=dev node app.js
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题