Мое приложение зависит от внешнего ConfigService
, который предоставляет некоторые глобальные настройки для моего приложения. Это часть внешней библиотеки, но служба настроена для внедрения в 'root'. Компоненты в моем приложении используют его через внедрение зависимостей. Кроме того, вторая внешняя служба EmployeeService
также использует ее через внедрение зависимостей для доступа к настройке, необходимой для предоставления данных сотрудника в приложение.
Почему EmployeeService
всегда получает новый ConfigService
, а не услуга singleton предоставляется в root, если только я не работаю с AOT, как ng serve --aot
?
Подводя итог:
ConfigService
- providedIn: 'root'
, часть внешней библиотеки зависимость AppComponent
- ConfigService
введена здесь; компонент устанавливает и показывает некоторые настройки EmployeeService
- ConfigService
, введенные здесь; часть внешней библиотеки; получает новый экземпляр ConfigService
, когда ng serve
не установлен на --aot