Почему Angular CLI не добавляет сервисы в массив провайдеров автоматически?

Как когда мы создаем Component, Pipe с angular-cli командами, CLI автоматически добавляет их в массив объявлений определенного модуля, почему это не происходит в случае сервисов.

1 ответ

Решение

Это потому, что вы можете предоставить Services в Components а также на тот случай, если вы хотите разные экземпляры одного и того же Service,

В общем-то Components, Pipes, а также Directives зарегистрированы на Moduleпотому что Module Нужно знать о них, прежде чем он сможет их использовать.

Но в случае Serviceс, так как Service может быть зарегистрирован на Module уровень, а также Component Уровень (так как Angular поддерживает иерархическое внедрение зависимостей), это не имеет смысла для @angular/cli предположить, что вы хотите зарегистрировать сервис на Module уровень.

Я думаю, это единственное, что имеет для меня смысл для решения Angular Team не добавлять Service к providers массив Модуля на момент создания.

Другие вопросы по тегам