РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗jsnsPmPvInr 38 of 168 menu
◀ ▶

Введение в провайдеры в Nest

Пусть список записей собирает метод контроллера: он и адрес открывает, и хранит данные, и решает, что отдать. Такой метод разрастается, а второй адрес, которому нужны те же данные, вынужден копировать те же правила.

Провайдер - класс, который Nest создаёт сам и передаёт туда, где он нужен. Сервис - обычный такой класс: в нём лежат данные и операции над ними, а не привязка к адресу страницы. Контроллер остаётся тонким: он только отвечает на запрос и спрашивает готовый результат у сервиса.

Фреймворк не создаст экземпляр класса сам по себе. Его нужно записать в корневом модуле в списке провайдеров. Тогда Nest построит объект и сможет передать его туда, где он нужен. Без этой записи класс лежит в файле и в работе приложения не участвует.

Разделение снимает дублирование: один сервис кормит несколько маршрутов, а правила списка меняют в одном месте. На сайте с постами контроллер только открывает адрес и возвращает готовый список. Как записи устроены, он не знает.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить