Ионная 4 угловая кнопка возврата на предыдущую страницу вместо root? - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть небольшое приложение Ionic 4 с 2 вкладками и 1 страницей сведений.Проблема, с которой я здесь сталкиваюсь, заключается в том, что если я перейду с Tab2 на страницу сведений и оттуда с ion-back-button назад, он всегда перенаправит меня на Tab1 вместо Tab2, где я был раньше.

Вот мой пример:

Tab2 Html: здесь у меня есть простой ионный элемент с событием щелчка:

        <ion-item class="chat-item" (click)='openChat()' >

Он вызывает функцию openChat, которая работает следующим образом:

          openChat() {
            this.router.navigateByUrl('/chatdetail/:uid');
          }

Теперь он открывает мою страницу Chatdetail, на которой я поместил кнопку «Назад», чтобы перемещаться назад, как это:

    <ion-header>
      <ion-toolbar>
          <ion-buttons slot="start">
              <ion-back-button></ion-back-button>
           </ion-buttons>
        <ion-title>chatdetail</ion-title>
      </ion-toolbar>
    </ion-header>

Но когда я нажимаю эту кнопку, она не просто «выскакивает» страницу, как это было в Ionic3вместо этого он направляет меня на корневую страницу моего приложения, которая называется Tab1.

Есть ли способ перезаписать это событие назад, чтобы перейти на страницу, на которой я был раньше?

Ответы [ 3 ]

0 голосов
/ 18 мая 2019

Вы должны перейти как

    <ion-item class="chat-item" [routerLink]="[/chatdetail, 123]" routerDirection="forward">

routerDirection = "forward" стеков detailPage на страницах вкладок, и вы вернетесь обратно на правую вкладку

0 голосов
/ 12 июня 2019

с помощью nav-control мы можем вернуться, как показано ниже:

добавить публичный navCtrl: NavController в конструктор

back(){
  let animations:AnimationOptions={
    animated: true,
    animationDirection: "back"
  }
  this.navCtrl.back(animations)
}
0 голосов
/ 03 апреля 2019

Обновление:

Ионная команда исправила это на Ver: 4.3.0

Старый

Вам необходимо использовать defaultHref="/Tab2", например, так:

  <ion-back-button defaultHref="/Tab2"></ion-back-button>

URL-адрес для перехода назад по умолчанию, когда нет истории.

https://ionicframework.com/docs/api/back-button

Как перейти на предыдущую страницу?

import { Location } from "@angular/common";

constructor(private location: Location) { }

myBackButton(){
  this.location.back();
}
...