嗨, 当我浏览页面数时,我遇到一个问题, ionic 2 侧面菜单无法正常工作,某些页面设置为根,某些页面插入堆栈。
这是我正在经历的页面流程。
导航栈:
RootPage -> navCtrl.push(Page1) -> navCtrl.setRoot(Page2) -> this.navCtrl.push(Page3) ->
this.navCtrl.push(Page4) -> this.navCtrl.push(Page5) -> this.navCtrl.setRoot(Page6) ->
this.navCtrl.setRoot( Page7)
代码:
<ion-menu class="sproglets_menu" [content]="content" persistent="true" >
<!-- (ionOpen)="menuOpened()" (ionClose)="menuClosed()"
-->
<ion-content>
<ion-item no-lines color="transparnt">
<ion-avatar item-start>
<img src="assets/images/addimage.png">
</ion-avatar>
<h2>Umer</h2>
<p>Sproglets</p>
</ion-item>
<ion-list class="rr-menu" no-lines>
<button class="search_button" ion-button block item-left round outline color="light" icon-only (click)="Place_order()">
<ion-icon name='search'></ion-icon>
Search Jobs
</button>
<button ion-item color="transparnt" (click)="Profile()" detail-none>
Profile
</button>
<button ion-item color="transparnt" (click)="Notifications()" detail-none>
Notifications
<span ion-button clear item-end color="login_btn_color">28</span>
</button>
<button ion-item color="transparnt" detail-none>
Timesheets
<span ion-button clear item-end color="login_btn_color">28</span>
</button>
<button ion-item color="transparnt" (click)="Payment()" detail-none>
Payments
<span ion-button clear item-end color="login_btn_color">28</span>
</button>
<button ion-item color="transparnt" (click)="Setting()" detail-none>
Settings
</button>
<button ion-item color="transparnt" (click)="Logout()" detail-none>
Logout
</button>
</ion-list>
</ion-content>
</ion-menu>
<ion-nav [root]="rootPage" #content swipeBackEnabled="false"></ion-nav>
ionic 信息:
- Cordova CLI:6.5.0
- ionic 框架版本:3.4.2
- Ionic CLI 版本:2.2.1
- Ionic 应用程序库版本:2.2.0
- Ionic 应用脚本版本:1.3.7
- ios-deploy 版本:未安装
- ios-sim 版本:未安装
- 操作系统:Windows 8.1
- 节点版本:v4.5.0
- Xcode 版本:未安装
如果我将 Page7 设置为根目录,侧边菜单可以正常工作。
请指导我做错了什么。谢谢!
最佳答案
基本上我遇到了模态问题。我打开模态并导航到模态页面中的下一页,而不是关闭模态然后导航到下一页。 以下是解决此问题的正确流程。
1- 从这样的页面打开模式
presentContactModal() {
let contactModal = this.modalCtrl.create(ContactUs);
contactModal.present();
}
2- 使用 viewcontroller 和打开的模态关闭模态
constructor(public viewCtrl: ViewController) {
}
dismiss() {
let data = { 'foo': 'bar' };
this.viewCtrl.dismiss(data);
}
3- 从第一页导航到下一页,现在它永远不会产生任何菜单打开问题。
this.navCtrl.push(YourPage);
关于android - Ionic 2 侧边菜单在按下数次后不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44945083/