更改菜单结构 - 离子 2



我正在构建一个包含 3 个不同部分的应用程序,所有这些部分都有自己的菜单结构。我想知道如何在(例如(设置页面中更新这些内容。我已经开始了,但是当我更改应用程序时,我必须刷新应用程序才能显示菜单结构。

设置.html

<ion-list style="margin-bottom: 0px;">
  <ion-item>
    <ion-label>Taal</ion-label>
    <ion-select [(ngModel)]="language" cancelText="Annuleer" (ngModelChange)="changeLang()">
      <ion-option value="nl">Nederlands</ion-option>
      <ion-option value="en">English</ion-option>
      <ion-option value="du">Deutsch</ion-option>
    </ion-select>
  </ion-item>
  <ion-item>
    <ion-label>Waarvoor wilt u de app gebruiken</ion-label>
    <ion-select [(ngModel)]="type" cancelText="Annuleer" (ngModelChange)="changeType()">
      <ion-option value="alg">Algemeen</ion-option>
      <ion-option value="zrk">Zerken</ion-option>
      <ion-option value="kds">Kids</ion-option>
    </ion-select>
  </ion-item>
 </ion-list>

设置.ts

changeLang() {
    console.log(this.language);
    this.storage.set('appLang', this.language);
  }
  changeType() {
    console.log(this.type);
    this.storage.set('appType', this.type);
  }

app.component.ts

constructor(public platform: Platform, public popoverCtrl: PopoverController, public storage: Storage) {
    this.initializeApp();
      this.storage.get('appType').then((result) => {
        if(result == "alg") {
          this.pages = [
            { title: 'Home', component: HomePage },
            { title: 'Website', component: HomePage }
          ]
          this.menuTitle = "Algemeen";
        } else if(result == "zrk") {
          this.pages = [
            { title: 'Home', component: ZerkhomePage },
            { title: 'Plattegrond', component: PlattegrondPage },
            { title: 'Overzicht', component: LijstPage }
          ]
          this.menuTitle = "Zerken";
        } else if(result == "kds") {
          this.pages = [
            { title: 'Home', component: KidshomePage },
            { title: 'Quiz', component: QuizPage },
            { title: 'Prijs', component: PrijsPage }
          ]
          this.menuTitle = "Kids";
        }
      })
  }

所以我想要的是应用程序在我更改设置后"刷新"。我确实知道为什么这不起作用,因为菜单结构是在应用程序启动时加载的。

也许有人知道一个简单的解决方法!

您可以使用ionOpen事件。 检查此链接

在您的模板app.html

<ion-menu (ionOpen)="omMenuOpen()">

然后在您的"app.component.ts"中

omMenuOpen(){
   console.log('menu oppend.');
   //here set your pages
}

让我知道它是否有效。

相关内容

  • 没有找到相关文章

最新更新