все провайдеры в static forRoot() {} и заставляют всех при использовании модуля вызывать этот статический метод, даже в случаях, когда не нужно передавать каких либо данных. И вопрос, зачем это делают и является ли это стандартом в ангуляре?
Это используют для ряда случаев: если необходимо указать кастомный конфиг для сервисов, и если в модуле декларируются компоненты, которые необходимо подключить, то провайдеры сервисов выносятся в forRoot, чтобы они не переопределялись повсеместно. Иногда бывает достаточно указать провайдеру providedIn: ‘root’, но иногда, особенно когда используются зависимости lazy module, например ComponentFactoryResolver, этого бывает недостаточно.
Обсуждают сегодня