我在提供商/服务中调用此功能以转到另一个页面。 例如,单击我在app.component.ts中使用OneSignal或模式或其他任何内容收到的通知推送消息。
import {Injectable} from "@angular/core";
import {NavController} from "ionic-angular";
@Injectable()
constructor() {
}
initRootNav(rootNav: NavController) {
console.log(rootNav);
this.rootNav = rootNav;
}
go(page: string, params?: any) {
this.rootNav.push(page, params)
}
页面确实“推送”,因为我可以在console.log中看到所有信息,但是不会呈现视图。通常是第一次工作,而不是再次工作。
我可以看到所有日志,但我仍然在page1 / modal1 /无论
ionViewDidLoad() {
console.log('ionViewDidLoad');
}
ionViewWillEnter() {
console.log('ionViewWillEnter');
this.getData(); / does stuff
}
ionViewDidEnter() {
console.log('ionViewDidEnter');
}
ionViewCanEnter() {
console.log('ionViewCanEnter');
}
ionViewWillLeave() {
console.log('ionViewWillLeave');
}
ionViewDidLeave() {
console.log('ionViewDidLeave');
}
答案 0 :(得分:1)
使用nav.setRoot()而不是nav.push()