Ионные 3 вкладки на модальном

Я реализовал вкладки в модальном окне.

Вот код:

Страницаwithmodal.ts

getFoodInfo(food) {
    let foodModal = this.modalCtrl.create('TabspagePage', { Model: food, Api: this.api, Title: 'Food Infopedia' });
    foodModal.onDidDismiss(option => {
      console.log(option);
    });
    foodModal.present();
  }

TabspagePage.html

<ion-tabs>
  <ion-tab tabIcon="heart" [root]="tabNutri" tabTitle="Nutritional" [rootParams]="model"></ion-tab>
  <ion-tab tabIcon="star" [root]="tabIngre" tabTitle="Ingredients" [rootParams]="model"></ion-tab>
</ion-tabs>

TabspagePage.ts

this.tabIngre = 'IngreinfoPage';
    this.tabNutri = 'FoodinfoPage';
    this.model = { 'Api': navParams.data.Api, 'Model': navParams.data.Model };

IngreinfoPage.html

<ion-header>
  <ion-navbar color="header">
    <ion-title>Food Infopedia</ion-title>
    <ion-buttons end>
      <button ion-button color="light" clear icon-only (click)="dismiss()">
        <ion-icon name='close' is-active="true"></ion-icon>
      </button>
    </ion-buttons>
  </ion-navbar>
</ion-header>

IngreinfoPage.ts

dismiss() {
    this.viewCtrl.dismiss();
  }

Когда я нажимаю кнопку закрытия, вызывается функция отклонения (), и я получаю сообщение об ошибке Runtime Error Uncaught (in promise): navigation stack needs at least one root page


person Ranjith Varatharajan    schedule 05.09.2017    source источник
comment
как вы называете эту модальную страницу?   -  person Suraj Rao    schedule 05.09.2017
comment
Можете ли вы добавить оба кода к вопросу? отредактировать сообщение..   -  person Suraj Rao    schedule 05.09.2017
comment
@suraj я обновил вопрос   -  person Ranjith Varatharajan    schedule 05.09.2017


Ответы (1)


<ion-tab tabIcon="star" [root]="tabIngre" tabTitle="Ingredients" [rootParams]="model"></ion-tab>

Это создаст новый стек навигации с корневой страницей в качестве вашей модальной страницы: IngreinfoPage.

И когда вы отклоняетесь от IngreinfoPage, он удаляет только IngreinfoPage, и в стеке не будет корневой страницы. Если вы хотите закрыть модальные вкладки, вам придется закрыть TabspagePage, т.е. создать функцию dismiss в TabsPagePage и, возможно, использовать Events API для вызова функции при закрытии.

person Suraj Rao    schedule 05.09.2017
comment
Спасибо @suraj, - person Ranjith Varatharajan; 07.09.2017