如何在一个离子应用程序中创建两个不同的离子菜单?

How to create two different ion menus in one ionic app?

我的应用程序有两种用户类型客户和员工,对于他们每个人,我需要不同的菜单。 我如何在 app.component.html 页面中添加一些条件,例如 if this.usertype = "Staff" 使用员工的菜单,否则使用客户的菜单。 我尝试使用不同的 Id 但在这种方法中,第一个菜单似乎消失了。希望你能帮我!提前致谢!

我当前的代码在app.component.html

<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@200;300&display=swap" rel="stylesheet">
<ion-app>
  <ion-menu menuId="main-menu" side="start" content-id="main-content">
    <ion-header>
      <ion-toolbar translucent>
        <ion-title style="font-family: 'Poppins';font-weight: 300;">Menu</ion-title>
      </ion-toolbar>
    </ion-header>
    <ion-content>
      <ion-list>
        <ion-item routerLink="/homepagee">
          <ion-label style="font-family: 'Poppins'">Home</ion-label>
        </ion-item>
        <ion-item routerLink="/terms">
          <ion-label style="font-family: 'Poppins'">Terms & Conditions</ion-label>
        </ion-item>
        <ion-item routerLink="/privacy">
          <ion-label style="font-family: 'Poppins'">Privacy Policy</ion-label>
        </ion-item>
        <ion-item routerLink="/myaccount">
          <ion-label style="font-family: 'Poppins'">My Details</ion-label>
        </ion-item>
        <ion-item routerLink="/home">
          <ion-label style="font-family: 'Poppins'">Logout</ion-label>
        </ion-item>
      </ion-list>
    </ion-content>
  </ion-menu>


  <ion-menu menuId="main-menu2" side="start" content-id="main-content2">
    <ion-header>
      <ion-toolbar translucent>
        <ion-title style="font-family: 'Poppins';font-weight: 300;">Menu</ion-title>
      </ion-toolbar>
    </ion-header>
    <ion-content>
      <ion-list>
        <ion-item routerLink="/homepagee">
          <ion-label style="font-family: 'Poppins'">Announcments</ion-label>
        </ion-item>
        <ion-item routerLink="/terms">
          <ion-label style="font-family: 'Poppins'">Terms & Conditions</ion-label>
        </ion-item>
        <ion-item routerLink="/privacy">
          <ion-label style="font-family: 'Poppins'">Privacy Policy</ion-label>
        </ion-item>
        <ion-item routerLink="/myaccount">
          <ion-label style="font-family: 'Poppins'">Chat</ion-label>
        </ion-item>
        <ion-item routerLink="/home">
          <ion-label style="font-family: 'Poppins'">Logout</ion-label>
        </ion-item>
      </ion-list>
    </ion-content>
  </ion-menu>

  <ion-router-outlet id="main-content"></ion-router-outlet>
  <ion-router-outlet id="main-content2"></ion-router-outlet>
</ion-app>

对于此场景,使用 MenuController 示例:

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

@Component({
  selector: 'menu-example',
  templateUrl: 'menu-example.html',
  styleUrls: ['./menu-example.css'],
})
export class MenuExample {

 constructor(private menu: MenuController) { 

   if(this.usertype = "Staff" ){
    this.menu.enable(true, 'Your_Staff_MenuID'); 
   }else{
    this.menu.enable(true, 'Your_Other__MenuID'); 
   }
 }   

}