Ionic 2:菜单切换不起作用
Ionic 2: Menu Toogle not working
我有2个页面,login和home,当用户登录成功后,会跳转到主页,我把这个设置为根页面。我已经使用 navCtrl.canGoBackFunction 确认了这一点,但这是错误的。我尝试添加一个菜单切换按钮,但是当我按下切换按钮时,菜单没有显示
这是我的home.html
<ion-header>
<ion-navbar color="primary">
<button menuToogle ion-button icon-only class="menu-button-left">
<ion-icon name="menu"></ion-icon>
</button>
<ion-title class="alogo"><img alt="logo" height="35" src="../../assets/imgs/logo.png" ></ion-title>
<button ion-button class="menu-button-right" (click)="logout()">
<p>Logout</p>
</button>
</ion-navbar>
</ion-header>
<ion-content padding-left padding-right>
</ion-content>
我的home.ts
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { LoginPage } from '../login/login';
import { AuthService } from '../../app/services/auth.service'
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(
public navCtrl: NavController,
private authService: AuthService
) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad HomePage');
console.log(localStorage.getItem('token'));
}
logout(){
console.log('logout button clicked');
this.authService.logOut();
this.navCtrl.setRoot(LoginPage);
this.navCtrl.popToRoot();
}
}
我的app.html
<ion-menu [content]="mycontent">
<ion-content>
<ion-list>
<p>List/p>
</ion-list>
</ion-content>
</ion-menu>
<ion-nav #mycontent [root]="rootPage" swipeBackEnabled="false"></ion-nav>
我已经多次重读手册,但我没有发现任何问题,手册说我把它放在导航栏中,页面应该是根目录。我也尝试过使用工具栏,但再次单击菜单切换按钮没有任何作用。有什么想法吗?
永久菜单在导航堆栈中所有页面的导航栏中显示 MenuToggle 按钮。要使菜单持久化,请在元素上将持久化设置为 true。请注意,这只会影响附加到菜单的导航栏中的 MenuToggle 按钮,并且持久设置为 true,任何其他 MenuToggle 按钮都不会受到影响。在您的代码中,您必须像下面的代码一样进行更改。
我的app.html
<ion-menu [content]="mycontent" persistent="true">
<ion-content>
<ion-list>
<p>List/p>
</ion-list>
</ion-content>
</ion-menu>
<ion-nav #mycontent [root]="rootPage" swipeBackEnabled="false"></ion-nav>
我有2个页面,login和home,当用户登录成功后,会跳转到主页,我把这个设置为根页面。我已经使用 navCtrl.canGoBackFunction 确认了这一点,但这是错误的。我尝试添加一个菜单切换按钮,但是当我按下切换按钮时,菜单没有显示
这是我的home.html
<ion-header>
<ion-navbar color="primary">
<button menuToogle ion-button icon-only class="menu-button-left">
<ion-icon name="menu"></ion-icon>
</button>
<ion-title class="alogo"><img alt="logo" height="35" src="../../assets/imgs/logo.png" ></ion-title>
<button ion-button class="menu-button-right" (click)="logout()">
<p>Logout</p>
</button>
</ion-navbar>
</ion-header>
<ion-content padding-left padding-right>
</ion-content>
我的home.ts
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { LoginPage } from '../login/login';
import { AuthService } from '../../app/services/auth.service'
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor(
public navCtrl: NavController,
private authService: AuthService
) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad HomePage');
console.log(localStorage.getItem('token'));
}
logout(){
console.log('logout button clicked');
this.authService.logOut();
this.navCtrl.setRoot(LoginPage);
this.navCtrl.popToRoot();
}
}
我的app.html
<ion-menu [content]="mycontent">
<ion-content>
<ion-list>
<p>List/p>
</ion-list>
</ion-content>
</ion-menu>
<ion-nav #mycontent [root]="rootPage" swipeBackEnabled="false"></ion-nav>
我已经多次重读手册,但我没有发现任何问题,手册说我把它放在导航栏中,页面应该是根目录。我也尝试过使用工具栏,但再次单击菜单切换按钮没有任何作用。有什么想法吗?
永久菜单在导航堆栈中所有页面的导航栏中显示 MenuToggle 按钮。要使菜单持久化,请在元素上将持久化设置为 true。请注意,这只会影响附加到菜单的导航栏中的 MenuToggle 按钮,并且持久设置为 true,任何其他 MenuToggle 按钮都不会受到影响。在您的代码中,您必须像下面的代码一样进行更改。
我的app.html
<ion-menu [content]="mycontent" persistent="true">
<ion-content>
<ion-list>
<p>List/p>
</ion-list>
</ion-content>
</ion-menu>
<ion-nav #mycontent [root]="rootPage" swipeBackEnabled="false"></ion-nav>