web-dev-qa-db-fra.com

Comment remplacer l'action de bouton d'origine ionique dans ionic 4 avec angular 7 7

Je voulais arrêter la navigation d'une page à une autre page lorsque l'utilisateur clique sur -bouton-back ion. J'ai une certaine validation/chèque à exécuter sur la base de l'application décidera de permettre une action arrière ou non.

8
Shubham Takode

Je n'ai pas pu trouver une solution de contrôleur uniquement (IonViewCanleave n'utilisait pas) - mon hack actuel est comme ci-dessous. Il empêche de manière conditionnellement/remplace le bouton d'origine ionique, tout en animant le bouton en cliquant.

HTML:

<ion-back-button defaultHref="/" routerDirection="back">
    <div (click)="back($event)"></div>
</ion-back-button>

SCSS:

ion-back-button {
    & > div {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
    }
}

TS:

public back($event) {
    if (shouldPreventBack)
        $event.stopPropagation();
}
0
Mike Muniom McBriar