Я пытаюсь показать Popover, используя Ionic Framework v3, у меня есть ионная страница, которая содержит компонент списка, в этом списке у меня есть кнопка, которая покажет поповер.Итак, я объявил свой компонент popover на родительской странице и создал в списке источник событий, который отправит родителю информацию о переключателе.
Но я получил данную ошибку:
No component factory found for PopoverComponent. Did you add it to @NgModule.entryComponents?
Код модуля страницы:
@NgModule({
declarations: [
PopoverComponent
],
imports: [
IonicPageModule.forChild(MyCustomPage),
],
entryComponents: [
PopoverComponent
]
})
export class MyCustomModule {}
Код страницы:
@Component({
selector: 'my-custom-page',
templateUrl: 'my-custom-page.html'
})
export class MyCustomPage {
public constructor(public popoverCtrl: PopoverController) { }
public toggleFilters() {
const popover = this.popoverCtrl.create(PopoverComponent);
popover.present();
}
}
шаблон страницы:
<my-custom-list (onFilterToggle)="toggleFilters()"></my-custom-list>
Список компонентов:
@Component({
selector: 'my-custom-list',
templateUrl: 'my-custom-list.component.html'
})
export class MyCustomListComponent {
@Output() onFilterToggle: EventEmitter<void> = new EventEmitter<void>();
public showFilters() {
this.onFilterToggle.emit();
}
}
Шаблон компонента:
<button (click)="showFilters()">Test</button>
Код поповера:
@Component({
selector: 'my-popover',
template: '<p>Test</p>'
})
export class PopoverComponent {
constructor(public viewCtrl: ViewController) {}
close() {
this.viewCtrl.dismiss();
}
}
У меня есть общий модуль, который загружен на все мои страницы, яЯ пытался добавить это здесь, но все еще та же ошибка, я пытался добавить это к entryComponents в компоненте списка, в модуле приложения и все той же ошибке.
Если у кого-то есть идея.