在我的 app.js 文件顶部,我放了
NODE_ENV='development';
但我收到错误,NODE_ENV 未定义。但是在 nodejs 文档中说 NODE_ENV 是全局的。如何使用开发设置启动我的应用程序?谢谢你。
在我的 app.js 文件顶部,我放了
NODE_ENV='development';
但我收到错误,NODE_ENV 未定义。但是在 nodejs 文档中说 NODE_ENV 是全局的。如何使用开发设置启动我的应用程序?谢谢你。
最好在开发模式下启动您的应用程序,如下所示:
NODE_ENV=development node app.js
但是如果你真的想设置它,你的应用文件只需像这样设置它:
process.env.NODE_ENV= "development"
NODE_ENV 是一个环境变量。
当您调用 Node.js 时,您在 shell 中设置它。
但是,开发是默认设置;如果你想要产品,你只需要做任何事情。
如果你想在你的js文件中设置一个环境变量,你应该这样做:
process.env.NODE_ENV = 'development';
或者,您可以在 shell 中设置变量并运行您的应用程序:
$ NODE_ENV="development" node ./app.js
或导出变量并运行您的应用程序:
$ export NODE_ENV="development"
$ node ./app.js
在 Windows 上:
$ set NODE_ENV="development"
$ node app.js
通过使用 NPM,您可能会在 package.json 中使用以下脚本:
"scripts": {
"start": "nodemon ./bin/www",
"dev_win": "set NODE_ENV=development && node ./bin/www >> /romba/log/api.log 2>> /romba/log/error.log",
"prod_win": "set NODE_ENV=production && node ./bin/www >> /romba/log/api.log 2>> /romba/log/error.log"
"prod_nix": "NODE_ENV=production node ./bin/www >> /romba/log/api.log 2>> /romba/log/_error.log"
},...
要启动其中一个脚本,请使用以下命令:
npm run-script prod_win
在 JavaScript 代码中,我检查条件:
process.env.NODE_ENV.indexOf('production') > -1
为了从 cmd 开始,您可以尝试
NODE_ENV=development node yourappname.js
如果您在安装了 forever的服务器中执行此操作,您可以提及环境变量,例如
NODE_ENV=development forever start yourappname.js