import {Component, Directive} from 'angular2/src/core/annotations_impl/annotations'; import {View} from 'angular2/src/core/annotations_impl/view'; import {ObservableWrapper} from 'angular2/src/facade/async'; import {Routable, Router, NavController, NavbarTemplate, Navbar, NavPush, Content} from 'ionic/ionic'; import {SecondPage} from './second-page'; @Component({selector: 'ion-view'}) @View({ template: '' + '' + 'First Page: {{ val }}' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '

First Page: {{ val }}

' + '

' + '

' + '' + '' + '' + '
', directives: [NavbarTemplate, Navbar, NavPush, Content] }) export class FirstPage { constructor( nav: NavController ) { this.nav = nav; this.val = Math.round(Math.random() * 8999) + 1000; this.router = FirstPage.router.invoke(this); this.pushPage = SecondPage; this.pushData = { id: 420 } setTimeout(() => { console.log(this._viewDidEnter); ObservableWrapper.subscribe(this._viewDidEnter, () => { console.log('ENTERRRRR'); }); }); } viewLoaded() { console.log('viewLoaded first page'); } viewWillEnter() { console.log('viewWillEnter first page'); } viewDidEnter() { console.log('viewDidEnter first page'); Router.emit(this.router.routeInfo.url); } viewWillLeave() { console.log('viewWillLeave first page'); } viewDidLeave() { console.log('viewDidLeave first page'); } viewWillCache() { console.log('viewWillCache first page'); } viewDidCache() { console.log('viewDidCache first page'); } viewWillUnload() { console.log('viewWillUnload first page'); } viewDidUnload() { console.log('viewDidUnload first page'); } push() { this.nav.push(SecondPage, { id: 8675309, myData: [1,2,3,4] }, { animation: 'ios' }); } } new Routable(FirstPage, { url: '/first-page' })