2017-04-08 6 views
1

Wie kann ich Seitenänderungen in Ionic 2 abonnieren? Ich möchte nur Seitennamen/Titel global protokollieren. Gibt es ein Event, das ich abonnieren kann?Ionic 2 Seite Abonnement ändern

+0

erhalten Sie nutzen könnten [Veranstaltungen] (http://ionicframework.com/docs/api/util/Events/) für so etwas wie .. –

+0

Ich mag würde zu Mach das global, damit ich nicht jede Datei anfassen muss – mark

+0

Du solltest den Ereignissen der App-Komponente root navcontrollers zuhören. – JoeriShoeby

Antwort

0

erstellen Service

import {Injectable} from '@angular/core'; 
import {Subject} from 'rxjs/Rx'; 

@Injectable() 
export class RouteNamesService{ 
    constructor(){ 
    } 
    public name = new Subject(); 

    setRouteName(name){ 
     this.name.next(name); 
    } 
} 

in app.component.ts zu

this.routeNamesService.name.subscribe(name => this.routeName = name); 

abonniert, wenn Sie in eine Komponente geben dann Feuer

this.routeNamesService.setRouteName("Settings"); 

(oder) in app.component.ts

@ViewChild(Nav) nav: Nav; 

    ngAfterViewInit() { 
    this.nav.viewDidEnter.subscribe((data) => { 
     console.log(data); 

    }); 

    } 

in Daten können Sie Komponentennamen