Как я могу импортировать в файл .js определенный экспорт из файла .mjs, используя асинхронный динамический импорт?
Я пытался найти ответ на эту проблему, но мне это не удалось, поэтому я спрашиваю об этом сам. Я надеюсь, что это внесет свой вклад в будущее.
Я новичок в JS, это первый раз, когда я пытался написать код JS, и я работаю над существующим репозиторием, заполненным файлами .js и .mjs.
У меня есть файл .mjs, который экспортирует набор баз данных (или я так понимаю) с именем «modelsPromise» и позволяет другим файлам запускать различные методы оболочки mongo в этих базах данных, например:
const models = await modelsPromise
const site = await models.tableName.findOne({ where: { Number } });
В других файлах .mjs импорт выглядит так:
import { modelsPromise } from '../db/db';
Я пытаюсь импортировать эту коллекцию в файл .js - я обнаружил, что лучший (или единственный?) Способ сделать это - использовать асинхронный динамический импорт:
(async () => {
const {dbs} = await import('../../../server/db/db');
})();
Мой вопрос -
- Учитывая, что db.mjs экспортирует modelsPromise, а также другие вещи, как я могу использовать его в моем файле .js? Это должно быть что-то вроде dbs.modelsPromise?
- Может ли кто-нибудь таким образом импортировать конкретный экспорт (modelsPromise)?
Заранее спасибо!