import { Component, NgModule } from '@angular/core'; import { IonicApp, IonicModule, App, AlertController, ModalController, ViewController, Tab, Tabs } from '../../../..'; // // Modal // @Component({ template: ` Cancel Filter Sessions Done Tracks Toggle {{i}} Reset All Filters App Nav Pop ` }) export class MyModal { items: any[] = []; constructor(private viewCtrl: ViewController, private app: App) { for (var i = 1; i <= 10; i++) { this.items.push(i); } } dismiss() { // using the injected ViewController this page // can "dismiss" itself and pass back data this.viewCtrl.dismiss(); } appNavPop() { this.app.navPop(); } } // // Tab 1 // @Component({ template: ` Settings Tab 1 Item {{i}} {{i}} {{i}} {{i}} Select Previous Tab App Nav Pop ` }) export class Tab1 { items: any[] = []; constructor(private tabs: Tabs, private app: App) { for (var i = 1; i <= 250; i++) { this.items.push(i); } } selectPrevious() { this.tabs.select(this.tabs.previousTab()); } appNavPop() { this.app.navPop(); } } // // Tab 2 // @Component({ template: ` Schedule {{session.name}} {{session.name}} {{session.name}} {{session.location}} {{session.location}} {{session.location}} SpeakerInfo Add toFavorites Select Previous Tab App Nav Pop ` }) export class Tab2 { sessions: any[] = []; constructor(private tabs: Tabs, private app: App) { for (var i = 1; i <= 250; i++) { this.sessions.push({ name: 'Name ' + i, location: 'Location: ' + i }); } } selectPrevious() { this.tabs.select(this.tabs.previousTab()); } appNavPop() { this.app.navPop(); } } // // Tab 3 // @Component({ template: ` Stopwatch Tab 3 Present Alert Present Modal Select Previous Tab App Nav Pop ` }) export class Tab3 { constructor(private alertCtrl: AlertController, private modalCtrl: ModalController, private tabs: Tabs, private app: App) {} presentAlert() { let alert = this.alertCtrl.create({ title: 'Alert Title!', buttons: ['Dismiss'] }); alert.present(); } presentModal() { this.modalCtrl.create(MyModal).present(); } selectPrevious() { this.tabs.select(this.tabs.previousTab()); } appNavPop() { this.app.navPop(); } } @Component({ template: ` Menu Close Menu ` }) export class TabsPage { root1 = Tab1; root2 = Tab2; root3 = Tab3; onChange(ev: Tab) { console.log('Changed tab', ev); } onSelect(ev: Tab) { console.log('Selected tab', ev); } } @Component({ template: `` }) export class E2EApp { root = TabsPage; } @NgModule({ declarations: [ E2EApp, MyModal, Tab1, Tab2, Tab3, TabsPage ], imports: [ IonicModule.forRoot(E2EApp, { tabsHighlight: true, }) ], bootstrap: [IonicApp], entryComponents: [ E2EApp, MyModal, Tab1, Tab2, Tab3, TabsPage ] }) export class AppModule {}
Select Previous Tab
App Nav Pop
{{session.location}} {{session.location}} {{session.location}}
Present Alert Present Modal