Ionic 既不推送页面也不渲染
Ionic not pushing to page neither rendering
我在 provider/service 中调用此函数以转到另一页。
例如,在单击我在 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)
}
该页面 'push' 因为我可以在 console.log 中看到所有信息,但未呈现视图。通常第一次成功就再也不会了。
我可以看到所有日志,但我仍在 page1/modal1/whatever
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');
}
使用 nav.setRoot() 而不是 nav.push()
我在 provider/service 中调用此函数以转到另一页。 例如,在单击我在 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)
}
该页面 'push' 因为我可以在 console.log 中看到所有信息,但未呈现视图。通常第一次成功就再也不会了。
我可以看到所有日志,但我仍在 page1/modal1/whatever
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');
}
使用 nav.setRoot() 而不是 nav.push()