操作表(在选项卡页中)通过提供程序推送页面

时间:2018-07-14 14:06:24

标签: ionic3

我有一个Tabpage(home.html),第一个标签(home-today-view.html)有一个来自提供者(view-container.ts)的操作表。

home.html

<ion-tabs>
  <ion-tab *ngFor="let t of tabs" [root]="t.Page"  [tabTitle]="t.title" [tabIcon]="t.icon" [tabBadge]="t.badgeCount" tabBadgeStyle="danger"></ion-tab>
</ion-tabs>

home.ts

  constructor(public navCtrl: NavController) {

    this.tabs = [
      { Page: HomeTodayViewPage, title: "Home", icon: "apps"},
      { Page: SearchPage, title: "Search", icon: "search"},
      { Page: CreatePage, title: "New", icon: "add"},
      { Page: DraftPage, title: "Draft", icon: "paper"},
      { Page: NotificationPage, title: "Watch", icon: "eye", badgeCount: 3}
    ];

  }

home-today-view.html

<button ion-button icon-only (click)="presentActionSheet()">
  <ion-icon name="more"></ion-icon>
</button>

home-today-view.ts

  presentActionSheet(){
    this.vc.presentActionSheet(); 
  }

view-container.ts

 presentActionSheet() {

    let actionSheet = this.actionSheetCtrl.create({
      title: 'News',
      buttons: [
        {
          text: 'Last 3 days',
          handler: () => {
            this.app.getRootNav().push(Home3ViewPage);
          }
        },
..

由于NavController无法在提供程序中使用,因此我正在使用app.getRootNav()。push()来推送页面。但这将导致没有Tab页的新页面。

我希望页面将在“标签”页面中导航。因此,我怀疑.getRootNav不是正确的使用方法,但我不知道如何进行。

请帮助。感谢您的宝贵时间。

0 个答案:

没有答案