@pogromist228

Как запустить сервис на этапе загрузки nest?

Раньше писал сервисы на express, решил перейти на nest.
В старом сервисе при запуске срабатывала функция которая парсила все json файлы в директории storage/config, и сохраняла их в модуль файла (config.js). Таким образом включив (require('config.js')) мне были доступны все конфигурационные json файлы.
Теперь мне нужно реализовать такое-же на nest.
Мне посоветовали реализовать это отдельным модулем, только я не знаю как запустить метод модуля на этапе запуска nest, и если конфигурация не загружена, остановить запуск.

Я подготовил немного кода: https://codesandbox.io/s/nest-forked-gsy160?file=/...
Там в сервисе config модуля, есть метод init, (там заглушка) если он вернет true - конфигурация загружена (можно запускать nest) иначе (false) - нужно прекратить запуск (и выдать ошибку)
Подскажите пожалуйста как запустить этот метод на этапе запуска nest???
  • Вопрос задан
  • 139 просмотров
Решения вопроса 1
@historydev
Редактирую файлы с непонятными расширениями
click
static init() // - make static method

async function bootstrap() {  // change main.ts
  if (!ConfigService.init()) {
    console.error('Invalid config');
    return;
  }
  const app = await NestFactory.create(AppModule);
  // тут как-то нужно запустить метод init из сервиса config модуля.
  await app.listen(3000);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы