gpt4 book ai didi

angular - 侧边菜单停止工作

转载 作者:搜寻专家 更新时间:2023-10-30 21:48:59 25 4
gpt4 key购买 nike

我从菜单创建了 Ionic 应用程序

ionic start myApp sidemenu

在其中一个页面上会有一个测试,我希望在测试结束后有一个带有评论的必填页面。在填写评论之前,用户无法到达任何地方。

我创建了一个测试页和一个评论页

我决定使用模态框

在测试页面上有一个打开评论页面的按钮

finishTest() {
let modal = this.modalCtrl.create('CommentPage');
modal.present();
}

在评论页面,我想发送后去主页面

constructor(public navCtrl: NavController, public viewCtrl: ViewController) {}

onSubmit(form: NgForm) {
this.navCtrl.setRoot(HomePage);
}

问题是,当我转到主页时,我的侧边菜单停止工作。

有人遇到过这个问题吗?如何解决?你能用别的东西代替模态框吗?

最佳答案

您的代码存在的问题是,当您以模式模式打开页面时,该模式有自己的导航堆栈。因此,当您在模态内部执行 this.navCtrl.setRoot(HomePage); 时,您实际上是将该页面设置为模态导航堆栈的根页面,其中侧边菜单没有工作。

为了解决这个问题,您需要在您的应用中获取根 NavController 的引用,如下所示:

import { Component } from '@angular/core';
import { App } from 'ionic-angular';

@Component({... })
class YourModalPage {

constructor(public appCtrl: App, ...) {}

pushPage() {
this.appCtrl.getRootNav().push(HomePage);
}

setPageAsRoot() {
this.appCtrl.getRootNav().setRoot(HomePage);
}

}

您可以找到有关使用不同导航堆栈的更多信息 here .

关于angular - 侧边菜单停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49461674/

25 4 0