I am trying to navigate to a shared component from a lazy loaded page, and I keep running into the
Uncaught (in promise): Error: No component factory found for InfoComponent. Did you add it to @NgModule.entryComponents?
Error: No component factory found for InfoComponent. Did you add it to @NgModule.entryComponents?
at noComponentFactoryError (http://localhost:8100/build/vendor.js:3559:34)
error. I’ve pasted the shared component module.ts, and the lazy loaded pages module.ts + ts file which imports a component from the shared ones.
SHARED COMPONENT
import { NgModule } from '@angular/core';
import { InfoComponent } from './info/info';
import { PersonalInfoComponent } from './personal-info/personal-info';
import { PersonalStatementComponent } from './personal-statement/personal-statement';
import { CitizenshipInfoComponent } from './citizenship-info/citizenship-info';
import { EmploymentComponent } from './employment/employment';
import { EducationComponent } from './education/education';
import { IonicModule } from 'ionic-angular';
@NgModule({
imports: [IonicModule],
declarations: [InfoComponent,
PersonalInfoComponent,
PersonalStatementComponent,
CitizenshipInfoComponent,
EmploymentComponent,
EducationComponent],
exports: [InfoComponent,
PersonalInfoComponent,
PersonalStatementComponent,
CitizenshipInfoComponent,
EmploymentComponent,
EducationComponent],
entryComponents: [InfoComponent,
PersonalInfoComponent,
PersonalStatementComponent,
CitizenshipInfoComponent,
EmploymentComponent,
EducationComponent],
})
export class TuitionReclassificationComponentsModule {}
LAZY LOADED module.ts
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { TuitionReclassificationPage } from './tuition-reclassification';
import { TuitionReclassificationComponentsModule } from './components/tuition-reclassification-components.module';
@NgModule({
declarations: [
TuitionReclassificationPage,
],
imports: [
TuitionReclassificationComponentsModule,
IonicPageModule.forChild(TuitionReclassificationPage)
],
exports: [
TuitionReclassificationPage
]
})
export class TuitionReclassificationPageModule {}
LAZY LOADED PAGE
import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { InfoComponent } from './components/info/info';
/**
* Generated class for the TuitionReclassificationPage page.
*
* See https://ionicframework.com/docs/components/#navigation for more info on
* Ionic pages and navigation.
*/
@IonicPage({
name: 'rcb-petitition-ga-tuition-reclassification',
segment: 'tuition-reclassification'
})
@Component({
selector: 'page-tuition-reclassification',
templateUrl: 'tuition-reclassification.html',
})
export class TuitionReclassificationPage {
public rootPage: any = InfoComponent;
constructor(public navCtrl: NavController, public navParams: NavParams) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad TuitionReclassificationPage');
}
}