Я создаю приложение API REST с nodejs, Я также создаю внешний пакет для этого приложения. Этот пакет является адаптером между REST API и базой данных.Nodejs как module.exports после вызова функции
Пакет index.js
это:
db = undefined;
var User = require('./models/user/user-model');
var neo4j = require('seraph');
module.exports.connect = function (url, username, password) {
db = neo4j({server: url, user: username, pass: password});
};
module.exports.User = User;
В настоящее время существует несколько проблем, для меня здесь:
В
User
модуля зависит отdb
объекта экземпляра, а потому, что я фактически загружает модуль до того, как методconnect
вызывается, объектdb
не определен, я могу решить его, переместивrequire('User');
внутрь метода подключения и он работает, но из того, что я знаю, модуль загрузки внутри функции не является хорошей идеей. Как я могу загрузить модуль после создания объектаdb
?Это правильный способ обмена переменной между модулями? Я хочу, чтобы
db
был доступен в каждом модуле пакета. Как я это делаю?
Оберточные мое приложение в функции не то, что я хочу сделать .. и это не решает проблема требования внутри функции – tubu13