Angular 4: не е намерена фабрика за компоненти,добавихте ли я към @NgModule.entryComponents?
Използвам Angular 4 шаблон с Webpack и имам тази грешка, когато се опитам да използвам компонент (ConfirmComponent):
Не е намерена фабрика за компоненти за ConfirmComponent. Добавихте ли го в @NgModule.entryComponents?
Компонентът е деклариран в app.module.server.ts
@NgModule({
bootstrap: [ AppComponent ],
imports: [
// ...
],
entryComponents: [
ConfirmComponent,
],
})
Експорт на клас AppModule { }
Имам също така app.module.browser.ts
и app.module.shared.ts
Как мога да поправя това?
231
3
Добавете това във вашия
module.ts
,ако ConfirmComponent е в друг модул, трябва да го експортирате там, за да можете да го използвате извън него, добавете:
В случай на динамично зареждан компонент и за да бъде генерирана ComponentFactory, компонентът трябва да бъде добавен и към entryComponents на модула:
съгласно дефиницията на entryComponents
Имах същия проблем. В този случай
imports [...]
е от решаващо значение, защото няма да работи, ако не импортиратеNgbModalModule
.В описанието на грешката се казва, че компонентите трябва да се добавят в масива
entryComponents
и това е очевидно, но се уверете, че сте добавили този масив на първо място:ако използвате маршрутизация в приложението си
например: