我正在调用home.html中的方法
(click)="openPage(EventsPage)"
我知道我是否只使用这种方法
openPage() {
this.navCtrl.push(EventsPage)
}
在home.ts它会工作。
基本上我想根据点击的内容采用不同的参数,但只使用一种方法导航到所选页面,例如。
(click)="openPage(EventsPage)"
(click)="openPage(TimetablePage)"
openPage(page) {
this.navCtrl.push(page)
}
我是否需要使用switch语句或ifs?我希望我能把它保持在一两行。
任何建议或建议表示感谢。
答案 0 :(得分:0)
由于这似乎是一个刚开始或正在摆弄的项目,这就是我所建议的。
创建任何新页面时,请创建page.module.ts。
典型的page.module.ts看起来像这样
import {IonicPageModule} from 'ionic-angular';
import {NgModule} from '@angular/core';
import {YourPage} from './your-page.ts';
@NgModule({
declarations: [YourPage],
imports: [IonicPageModule.forChild(YourPage)]
})
export class YourPageModule{}
这就是你的page.ts看起来像
的样子import {Component} from '@angular/core';
import {IonicPage} from 'ionic-angular';
@IonicPage()
@Component({
selector: 'your-page',
templateUrl: 'your-page.html'
})
export class YourPage{}
当您完成所有这些设置后,您只需发送“PagePage'字符串到openPage(页面)函数导航到YourPage组件。
通过ionics NavController
推送字符串而不是导入的页面实例也可以启用延迟加载(页面的js-bundle在需要时获取,而不是在启动时一次获取)。如果您有一个包含许多页面的应用程序,这可以显着改善您的启动时间。我还建议阅读IonicPage docs,它们在处理导航时非常有用。