最簡單的方法是定義生成一個模式的內容頁:
ionic g ModalPage
然後你如果命令創建這個文件打開模式,content.module.ts,你必須改變
imports: [
IonicModule.forChild(ModalPage),
],
TO:
imports: [
IonicModule.forRoot(ModalPage),
],
然後你要添加的模態組織一些HTML代碼:
<ion-header>
<ion-toolbar>
<ion-title>
GO OUT
</ion-title>
<ion-buttons start>
<button ion-button (click)="dismiss()">
<span ion-text color="primary" showWhen="ios">Cancel</span>
<ion-icon name="md-close" showWhen="android,windows"></ion-icon>
</button>
</ion-buttons>
</ion-toolbar>
</ion-header>
<ion-content>
<p> This is a modal test!!!! </p>
</ion-content>
然後,你必須在聲明和應用程序模塊的entryComponents進口。
import { ModalPage } from '../pages/modal-page/modal-page';
@NgModule({
declarations: [
MyApp,
HomePage,
Main,
ModalPage
],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp),
HttpModule
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
HomePage,
ModalPage
],
providers: [
StatusBar,
SplashScreen,
Device,
{provide: ErrorHandler, useClass: IonicErrorHandler}
]
})
然後在頁面中您想要執行的模式,你必須添加一個函數到你想用來發射它的元素。
<div full large class="button-el btn-goOut" (tap)="openModal()">
在您要使用的模式的頁面,你必須輸入:
import { ModalPage } from '../modal-page/modal-page'
重要說明:此元素不應該在構造函數中,調用模式,你只需要做這樣的:
openModal(){
let modal = this.modalCtrl.create(ModalPage);
modal.present();
}
儘量避免來自文檔的示例代碼。總是嘗試查看[demo source]中的示例(https://github.com/driftyco/ionic-preview-app/tree/master/src/pages/modals/basic)或[ionic-conference-app](https :// github上。com/driftyco/ionic-conference-app) 因爲他們的文檔每天都在變化。 – Math10