NodeJs项目怎么区分(配置)开发环境和正式环境?

avatar

这里以koa2开发的web项目为例说明

项目开发好了,部署的时候使用pm2启动,可以增加下面配置

apps:
  - script: bin/www
    watch: false
    name: demo
    env:
      NODE_ENV: production

这样在用pm2启动的时候就可以用 process.env.NODE_ENV 来获取node环境了,取到的值就是 production

开发过程中用的是nodemon启动的,这时候用process.env.NODE_ENV来获取node环境是 undefined

应用:

假如项目开发过程中用的是mongodb,这时候就可以区分开发库跟部署库了,具体代码如下

if (process.env.NODE_ENV === 'production') {
  mongoose.connect("mongodb://localhost/prod", { useMongoClient: true});
} else {
  mongoose.connect("mongodb://localhost/dev", { useMongoClient: true});
}
0 条评论

目前还没有回答,快来帮帮TA吧!

添加一条评论 请尽量发布对他人有帮助的评论

登录后可发布评论

登录 | Github登录