我是Ionic的新手,我正在使用sidemenu
在Ionic 4中开发一个基本应用程序。
我要在侧面菜单中添加一个按钮,当我单击该按钮时,菜单不会切换。有人可以帮我吗? 这是我正在尝试的代码。
<ion-button color="primary" (click)="function()" class="class" menuToggle expand="block" fill="outline">
text
</ion-button>
不重复问题的说明
请检查粗体字,我已经有一个正常工作的菜单,但是问题是我想在单击ion-button
而不是ion-item
时关闭该菜单。
答案 0 :(得分:8)
将您的ion-button
封装在ion-menu-toggle
元素中,就像这样:
<ion-menu-toggle>
<ion-button>Toggle Menu</ion-button>
</ion-menu-toggle>
编辑:
如果您不想使用ion-menu-toggle
,则可以执行以下操作:
在您的app.component.ts中:
import { MenuController } from '@ionic/angular'; //import MenuController to access toggle() method.
@Component({
selector: 'app-root',
templateUrl: 'app.component.html'
})
export class AppComponent {
constructor(
public menuCtrl: MenuController
) {
this.initializeApp();
}
toggleMenu() {
this.menuCtrl.toggle(); //Add this method to your button click function
}
}
在您的app.component.html中:
<ion-button (click)="toggleMenu()">Toggle Menu</ion-button>
要查看所有方法,请check the docs here。
答案 1 :(得分:-3)
在您的app.component.html中:
<ion-app>
<ion-split-pane when="sm">
<ion-menu>
<ion-header>
<ion-toolbar color="primary" text-center>
<ion-title>MyApp</ion-title>
</ion-toolbar>
</ion-header>
<ion-content>
<ion-list>
<ion-menu-toggle auto-hide="false" *ngFor="let p of pages">
<ion-item [routerDirection]="'root'" href={{p.url}}>
<ion-icon slot="start" [name]="p.icon"></ion-icon>
<ion-label>
{{p.title}}
</ion-label>
</ion-item>
</ion-menu-toggle>
</ion-list>
</ion-content>
</ion-menu>
<ion-router-outlet main></ion-router-outlet>
</ion-split-pane>
</ion-app>