Кнопка возврата контроллера Ionic 3 не отображается - PullRequest
0 голосов
/ 29 мая 2018

При открытии закрытого приложения из push-уведомления кнопка «Назад» не отображается в навигационной панели.Если приложение открыто, появляется кнопка.

Я попытался проверить длину navController и вставить страницу, если длина равна 0. Но кнопка «Назад» все равно не отображается.

Какие-нибудь советы о том, как заставить это работать?

<ion-header>
  <ion-navbar>
    <ion-title>
      Title
    </ion-title>
  </ion-navbar>
</ion-header>

constructor(navCtrl: NavController) {

  let lastNavLength = navCtrl.length();

  if (lastNavLength == 0) {
    console.log('empty');
    navCtrl.insert(0, TabsPage);
  }

}

app.component.ts

  private onPushOpened(payload: OSNotificationPayload) {
    if (payload.additionalData.eventKey) {
      this.notificationOpen = true;
      this.appCtrl.getRootNav().push('EventPage', {
        id: payload.additionalData.eventKey,
        event: payload.additionalData.event,
        action: 'tapped'
      });
    }
  }

-------------- Редактировать --------------------

app.component.ts

  private onPushOpened(payload: OSNotificationPayload) {
    if (payload.additionalData.eventKey && payload.additionalData.event) {

      this.notificationOpen = true;
      this.appCtrl.getRootNav().push('event', {
        id: payload.additionalData.eventKey,
        event: payload.additionalData.event,
      });
    }
  }

tabs.module.ts

import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { TabsPage } from './tabs';

@NgModule({
    declarations: [
        TabsPage,
    ],
    imports: [
        IonicPageModule.forChild(TabsPage),
    ],
})
export class TabsPageModule { }

tabs.ts

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

@IonicPage({
  name: "TabsPage",
  segment: "tabs",
})
@Component({
  templateUrl: 'tabs.html'
})

export class TabsPage {

  tab1Root = 'HomePage';
  tab2Root = 'AboutPage';
  tab4Root = 'SettingsPage'

  constructor() {

  }
}

home.ts

@IonicPage({
  name: 'HomePage',
  segment: 'home'
})
@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})

event.ts

@IonicPage({
  name: 'EventPage',
  defaultHistory: ['HomePage'] .. tried with TabsPage also.
})
@Component({
  selector: 'page-event',
  templateUrl: 'event.html',
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...