Не найдена фабрика компонентов для ... Открытие модального - PullRequest
1 голос
/ 06 марта 2019

У меня есть одна страница, которая должна быть загружена внутри модальной, эта страница является дочерней по отношению к другой странице (я думаю, что это не имеет значения, но ...), суть в том, что когда я пытаюсь создать модальный, я получаю ошибкуниже

ERROR Error: Uncaught (in promise): Error: No component factory found for TarefasDetalhePage. Did you add it to @NgModule.entryComponents?

Но, когда я захожу в мой AppModule, чтобы поместить эту страницу в entryComponents, я получаю эту ошибку:

Component TarefasDetalhePage is not part of any NgModule or the module has not been imported into your module.

Вызов модального режима находится на моем HomePage.ts:

  async showModal(id){
    const modal = await this.modalController.create({
     component: TarefasDetalhePage,
     componentProps:{
       custom_id: id
     }
    });
    modal.present();
  }

Вот разметка:

    <ion-list *ngIf="interna === true" >
    <ion-item (click)="showModal(tarefa.id)"   routerDirection="forward" detail *ngFor="let tarefa of tarefasInternas" class="in-list item ion-focusable item-label hydrated">
      <ion-label>
        <h2>#{{tarefa.numero}} - {{tarefa.descricao}}</h2>
        <h3>{{tarefa.inicio}} - {{tarefa.fim}}</h3>
        <p>{{tarefa.comentarios}}</p>
      </ion-label>
    </ion-item>
  </ion-list>

Это моя структура:

enter image description here

Репо наGitHub: https://github.com/tiagosilveiraa/PManager

Ответы [ 2 ]

2 голосов
/ 06 марта 2019

Чтобы открыть component в модале, вы должны добавить component в app.module.js как entryComponent.

Ваше сообщение error показывает, что.

0 голосов
/ 06 марта 2019

Вы должны отредактировать NgModule в вашем tarefas.module.ts.Пожалуйста, добавьте остаток по мере необходимости.

@NgModule({
    imports: [
        MatDialogModule
    ],
    declarations: [
        ComponentName
    ],
    providers: [
        { provide: MAT_DIALOG_DEFAULT_OPTIONS, useValue: { hasBackdrop: true, closeOnNavigation: true } }
    ],
    entryComponents: [
        ComponentName
    ],
    exports: [
        ComponentName
    ],
})

export class Module {

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...