web-dev-qa-db-de.com

Ionic 4 Angular Zurück-Schaltfläche zur vorherigen Seite anstelle von root?

Ich habe eine kleine Ionic 4 App mit 2 Registerkarten und 1 Detailseite. Das Problem, mit dem ich hier konfrontiert bin, ist, dass ich von Tab2 in die Detailseite gehe und von dort mit ion-back-button zurück leitet es mich immer zu Tab1 anstatt zu Tab2 um, wo ich vorher war.

Hier ist mein Beispiel:

Tab2 Html: Hier habe ich ein einfaches Ionenelement mit einem Klickereignis:

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

Es ruft die openChat-Funktion auf, die folgendermaßen funktioniert:

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

Jetzt öffnet sich meine Chatdetail-Seite, auf der ich einen Zurück-Button platziert habe, um wie folgt zurück zu navigieren:

    <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>

Wenn ich auf diesen Button klicke, wird die Seite nicht nur wie in Ionic3 "eingeblendet", sondern ich werde zur Stammseite meiner App weitergeleitet, die Tab1 ist.

Gibt es eine Möglichkeit, dieses Back-Ereignis zu überschreiben, um zu der Seite zu gelangen, auf der ich vorher war?

6
Lukas R.

Sie sollten als navigieren

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

routerDirection="forward" stapelt detailPage auf Registerkarten und Sie werden zurück zur rechten Registerkarte navigiert

:}

1

mit Nav-Control können wir wie folgt zurückkehren

fügen Sie im Konstruktor public navCtrl: NavController hinzu

back(){
  let animations:AnimationOptions={
    animated: true,
    animationDirection: "back"
  }
  this.navCtrl.back(animations)
}
0
Satish Varre