在express.js环境中使用。有什么建议吗?
当前回答
在OSX上,我建议将export NODE_ENV=development添加到~/中。Bash_profile和/或~/。Bashrc和/或~/.profile。
我个人将该条目添加到我的~/。Bashrc,然后有~/。bash_profile ~ /。概要文件导入该文件的内容,因此它在各个环境中是一致的。
完成这些添加后,一定要重新启动终端来进行设置。
其他回答
在package.json:
{
...
"scripts": {
"start": "NODE_ENV=production node ./app"
}
...
}
然后在终端运行:
npm start
您可以按环境运行,如下所示,
NODE_ENV=production npm run start
我没有看到任何地方明确提到Docker解决方案;希望这能帮助到一些人:
在Dockerfile:
FROM node:16.11-alpine3.14 AS production
ARG NODE_ENV=production
ENV NODE_ENV=${NODE_ENV}
...
在OSX上,我建议将export NODE_ENV=development添加到~/中。Bash_profile和/或~/。Bashrc和/或~/.profile。
我个人将该条目添加到我的~/。Bashrc,然后有~/。bash_profile ~ /。概要文件导入该文件的内容,因此它在各个环境中是一致的。
完成这些添加后,一定要重新启动终端来进行设置。
为了不必担心你是在Windows、Mac还是Linux上运行脚本,请安装cross-env包。然后你可以很容易地使用你的脚本,像这样:
"scripts": {
"start-dev": "cross-env NODE_ENV=development nodemon --exec babel-node -- src/index.js",
"start-prod": "cross-env NODE_ENV=production nodemon --exec babel-node -- src/index.js"
}
对这个包的开发人员的巨大支持。
npm install --save-dev cross-env
推荐文章
- Babel 6改变了它导出默认值的方式
- 如何配置历史记录?
- ES6模板文字可以在运行时被替换(或重用)吗?
- [Vue警告]:找不到元素
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- 可以在setInterval()内部调用clearInterval()吗?
- AngularJS控制器的生命周期是什么?
- 无法读取未定义的属性“msie”- jQuery工具
- 我的蛋蛋怎么不见了?
- JavaScript中的排列?
- JavaScript中有睡眠/暂停/等待功能吗?
- 如何禁用文本选择使用jQuery?
- 如何停止事件冒泡复选框点击
- 向对象数组添加属性