對於離子-3項目,我們使用的是懶惰加載。我們的模塊「LOGIN」正在被加載。一切工作正常,但是當我們嘗試使用導航控制器在頁面之間導航內的延遲加載的模塊 - 我們得到的運行時錯誤「NO件廠」離子3延遲加載 - 無組件工廠
下面的代碼
login.ts
import { Component } from '@angular/core';
import { IonicPage } from 'ionic-angular';
import { NavController } from 'ionic-angular';
import {DummyPage} from './dummy';
@IonicPage()
@Component({
templateUrl: 'login.html'
})
export class LoginPage {
constructor(public navCtrl: NavController)
{
}
buttonClick()
{
this.navCtrl.push(DummyPage)
}
}
login.module.ts
import {ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';
import { CommonModule } from '@angular/common';
import { IonicPageModule } from 'ionic-angular';
import {LoginPage} from './login';
import {DummyPage} from './dummy';
@NgModule({
imports: [ CommonModule, IonicPageModule.forChild(LoginPage) ],
declarations: [LoginPage, DummyPage],
exports: [ LoginPage, DummyPage ],
providers: [ ]
})
/* core module is imported once and is made
applicable through the app. Application wide singleton services
like user authentication etc. are defined here */
export class LoginModule {
}
DUMMY.TS是裏面的登錄模塊的頁面,我不想爲它創建一個單獨的NG模塊 - 因此使用navController。該怎麼過拋出一個錯誤
import { Component } from '@angular/core';
import { IonicPage } from 'ionic-angular';
import { NavController } from 'ionic-angular';
@Component({
template:'<h1> AWWWW </h1>'
})
export class DummyPage {
constructor(public navCtrl: NavController)
{
}
buttonClick()
{
alert("Hello world");
}
}
如上所見,我已經加入DUMMY.TS和entryComponents
還沒有試過,但嘗試'IonicPageModule.forChild(DummyPage)'進口 –
作品!謝謝 ! –
好的..添加爲答案 –