在express.js环境中使用。有什么建议吗?
当前回答
在运行你的应用程序之前,你可以在控制台执行这个操作,
export NODE_ENV=production
或者如果你在窗口,你可以试试这个:
SET NODE_ENV=production
美国小妞PowerShell:
$env:NODE_ENV="production"
或者你可以这样运行你的应用:
NODE_ENV=production node app.js
你也可以在js文件中设置它:
process.env.NODE_ENV = 'production';
但我不建议在运行时文件中执行,因为在服务器中打开VIM并将其更改为生产环境并不容易。你可以进行配置。Json文件,每次你的应用程序运行时,它都会从中读取并设置配置。
其他回答
在OSX上,我建议将export NODE_ENV=development添加到~/中。Bash_profile和/或~/。Bashrc和/或~/.profile。
我个人将该条目添加到我的~/。Bashrc,然后有~/。bash_profile ~ /。概要文件导入该文件的内容,因此它在各个环境中是一致的。
完成这些添加后,一定要重新启动终端来进行设置。
这里没人提到。env吗?在你的应用根目录下创建一个.env文件,然后require('dotenv').config()并读取值。易于更改,易于阅读,跨平台。
https://www.npmjs.com/package/dotenv
export NODE_ENV=production是坏的解决方案,重启后消失。
如果你不想再担心这个变量了,把它添加到这个文件中:
/etc/environment
不要使用导出语法,只需写(如果已经有一些内容,则在新行中):
NODE_ENV=production
重启后即可工作。你将不必再输入导出NODE_ENV=生产命令,任何地方,只要使用节点与任何你想要的-永远,pm2…
对于英雄:
heroku config:set NODE_ENV="production"
也就是默认。
在package.json:
{
...
"scripts": {
"start": "NODE_ENV=production node ./app"
}
...
}
然后在终端运行:
npm start
您可以按环境运行,如下所示,
NODE_ENV=production npm run start
推荐文章
- 给一个数字加上st, nd, rd和th(序数)后缀
- 如何以编程方式触发引导模式?
- setTimeout带引号和不带括号的区别
- 在JS的Chrome CPU配置文件中,'self'和'total'之间的差异
- 用javascript检查输入字符串中是否包含数字
- 如何使用JavaScript分割逗号分隔字符串?
- 在Javascript中~~(“双波浪号”)做什么?
- 谷歌chrome扩展::console.log()从后台页面?
- 未捕获的SyntaxError:
- [].slice的解释。调用javascript?
- jQuery日期/时间选择器
- 我如何预填充一个jQuery Datepicker文本框与今天的日期?
- npm犯错!代码UNABLE_TO_GET_ISSUER_CERT_LOCALLY
- 数组的indexOf函数和findIndex函数的区别
- jQuery添加必要的输入字段