模块中的负载配置

时间:2019-09-10 11:38:21

标签: node.js asynchronous crash node-modules

我正在开发一个模块,并将控制器以及路由和视图放入该模块中。我正在导出路由和一个名为configure()的函数。

configure():您在app.js中调用此函数,并将配置传递给模块,然后此函数将其写入JSON文件。我正在我的app.js中进行此操作。

const express = require("express");
const path = require('path');
const mongoose = require("mongoose");
const bodyParser = require("body-parser");
const logger = require("morgan");
const authPackage = require('auth-package');
const routes = require('./routes/index');

const app = express();
const {
    port,
    dbUrl,
    authPackageConfig 
} = require('./config/config'); //this is the configuration of the app which is using the package.

//configuring auth package
authPackage.configure(authPackageConfig);

现在模块中有一个config.js文件。它读取由configure()函数编写的JSON文件并导出。控制器文件需要config.js。 config.js是

const fs = require('fs');
const path = require('path');

let config = null;

try {
    config = fs.readFileSync(path.join(__dirname + '/config.json'), 'utf8');
} catch (error) {
    throw error;
}
config = JSON.parse(config);

module.exports = config;

启动应用程序时,即使将配置对象传递给configure()函数,它也会崩溃。由于config.json文件为空而崩溃。在配置功能写入配置文件之前,应用会崩溃。我该如何解决?那个configure()函数在controll需要它之前先写入文件。

0 个答案:

没有答案