请问一下大佬们,我有一个需求这样:在生产环境下,不能直接在config.prod.js中硬编码mongodb数据库的地址、账号、密码等敏感配置信息,如何在应用启动前,将敏感配置信息传入,从而应用到egg-mongoose插件中。 我的实现这样子:在生产环境中新建extend-config.json文件,该文件里面写了敏感配置信息,然后在应用启动前,app.js去读取该配置文件并修改app.config。但是上述方法实现起来出问题了,发现更新后的配置信息没有传入egg-mongoose插件中,egg-mongoose插件就已经启动了,以下是我的代码: ${baseDir}/app.js
class AppBootHook {
  constructor(app) {
    this.app = app;
  }
  configWillLoad() {
    // 此时 config 文件已经被读取并合并,但是还并未生效
    // 这是应用层修改配置的最后时机
    // 注意:此函数只支持同步调用
    const app = this.app;
    let extendConfig = {};
    const configFilePath = path.join(app.config.baseDir, 'config/extend-config.json');
    if (fs.existsSync(configFilePath)) {
      extendConfig = JSON.parse(fs.readFileSync(configFilePath, { encoding: 'utf-8' }));
    }
    Object.assign(app.config, extendConfig);
  }
}
module.exports = AppBootHook;我这种方式哪里出了问题吗,或者大佬们是怎么做的。
