2017-02-05 50 views
4

我的應用程序非常大,有30個組件和頁面,我將它們全部加載到我的app.module.ts中,有時應用程序變慢。我想知道它有什麼可以做的。Ionic 2懶惰加載組件

我的問題:什麼是延遲加載組件並使用Ionic 2的角度2功能(更多模塊)的正確方法?

+0

https://github.com/driftyco/ionic/issues/8102他們仍然在努力。 – allenhwkim

+0

查看http://blog.ionic.io/ionic-and-lazy-loading-pt-1/ for Ionic 3(添加了延遲加載) –

回答

1

由於Ionic 3,您可以延遲加載組件。

只需爲每個組件/頁面創建一個新模塊。

這裏的主頁的模塊應該如何看起來像一個例子:

import { MyApp } from './app.component'; 
import { HomePage } from '../pages/home/home'; 
@NgModule({ 
    declarations: [MyApp, HomePage], 
    imports: [ ... ], 
    bootstrap: [IonicApp], 
    entryComponents: [MyApp, HomePage], 
    providers: [ ... ] 
}) 
export class AppModule {} 

創建模塊後,貼上@IonicPage()到組件:

import { Component } from '@angular/core'; 
import { IonicPage } from 'ionic-angular'; 
@IonicPage() 
@Component(...) 
export class HomePage { ... } 

現在你可以使用你的頁面/組件作爲字符串而不使用import聲明:

rootPage:any = 'HomePage'; 

欲瞭解更多描述,請查看Ionic Lazy Loading blog post