Я создал новый Angular проект с лениво загруженным модулем (LazyModuleModule).
Stackblitz: ЗДЕСЬ
Этот модуль загружен в модуль маршрутизации с отложенной загрузкой :
loadChildren: () => import('../app/lazy-module/lazy-module.module').then(m => m.LazyModuleModule)
Сам ленивый модуль не имеет компонентов или каких-либо директив. Он импортирует только другой загруженный модуль «EagerModule» с одним компонентом (ShowComponent).
В этом компоненте я хочу внедрить службу (TestService), которая является производной от абстрактной службы «TestAbstractService».
Я теперь предоставил TestServiceAbstract в EagerModule:
{provide: TestServiceAbstract, useClass: TestService}
Но при компиляции проекта я получаю сообщение errorMessage: «Не удается разрешить все параметры для ShowComponent».
Я действительно это делаю Не вижу никаких причин, почему этот подход не должен работать. Если я предоставляю TestService прямо в app.module, все работает, но это странно для меня.
Подсказка: Чтобы увидеть сообщение об ошибке в stackblitz, вам нужно открыть консоль и нажать на текст «что-то волшебное c произойдет». Маршрутизация к компоненту с ошибкой.