egg如何区分开发环境和生产环境

制作和查看环境

1. 设置好自己的环境

在这里插入图片描述

项目启动
package.json

"scripts": {
	"start":"egg-scripts start --env=prod --daemon --port 8081 --title=项目名称必须一致", // 正常当做生产环境来用
	"test":"egg-scripts start --env=test --daemon --port 8081 --title=项目名称必须一致"" // 测试环境
	"stop": "egg-scripts stop --title=项目名称必须一致",
	"dev":"egg-bin dev --port 8081", // 开发环境
	
}

2.与之配套

使用不同的启动方式调用不同的config文件(config.{env}.js)。
注:
egg-scripts start 默认以prod即生产模式启动,官方文档有提到。调用config.prod.js文件
设置env参数可切换环境。–env=test即为测试环境,调用config.test.js文件

也就是说 run 命令中的 --env=xxxx 那么所对应的,配置文件就使用 config.xxxx.js

依照官方的逻辑

依照官方的逻辑,我们在项目中如何差异化使用一些设置呢?

1. 设置差异化数据

我以 config.default.jsconfig.prod.jsconfig.test.js为例
例如:

// config.default.js 默认 开发环境
  config.test = {
    key: appInfo.name + "_这是秘密xxxxx",
    path: "/www/开发环境上传路劲", // 比如我配置一个测试、生产和开发环境中的上传路劲。
  };
// config.test.js  测试环境
  config.test = {
    key: appInfo.name + "_这是秘密xxxxx",
    path: "/www/测试环境上传路劲", // 比如我配置一个测试、生产和开发环境中的上传路劲。
  };
// config.prod.js  生产环境
  config.test = {
    key: appInfo.name + "_这是秘密xxxxx",
    path: "/www/生产环境上传路劲", // 比如我配置一个测试、生产和开发环境中的上传路劲。
  };

2.配置好了如何在项目使用呢?

只要在项目中,能用this的地方。

this.config.test['你定义好的数据key']

// 例如我获取路劲 path
console.log(this.config.test.path);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

厚渡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值