Node.JS - требуется и Mon goose singleton - PullRequest
0 голосов
/ 06 мая 2020

В настоящее время у меня есть это соединение Mon goose в моем приложении node.js - написано на Typescript.

В моем индексе. js У меня есть линия для подключения, т.е.

import mongoose = require('mongoose');

mongoose.connect(`mongodb://${process.env.MONGO_HOST}/${process.env.MONGO_COLLECTION}`, { useNewUrlParser: true, useUnifiedTopology: true });
mongoStatus()

Затем во втором файле (поскольку я хочу сохранить index. js минимальный) у меня есть:

import mongoose = require('mongoose');

export function mongoStatus(): void {
    const db = mongoose.connection;
    db.on('error', console.error.bind(console, 'Connection Error to Mongo:'));
    db.once('open', function () {
        console.log('Connected to Mongo')
    });
}

Кажется, это работает, но я хотел бы понять:

  • Действительно ли это действительно так? Я предполагаю, что сначала вызывается mongoose.connect(), затем я выполняю mongoStatus(), который использует одноэлементный объект Mon goose, поскольку я использую require.

Если его нет, может ли кто-нибудь посоветовать лучший подход, которому я должен следовать?

Первоначально я думал, возможно ли иметь все это (настройку подключения mongodb) в отдельном файле, но предполагал, что в этом индексе обязательно должно быть что-то. js поэтому я гарантирую, что все будет готово, когда само приложение загружается (индекс. js является точкой входа).

Любая помощь приветствуется.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...