Maison > Questions et réponses > le corps du texte
Description du scénario : dans un certain itinéraire de ng, lorsque l'utilisateur quitte l'itinéraire actuel, l'utilisateur doit être invité à confirmer s'il doit quitter
Mon doute : s'il s'agit d'une application ordinaire, nous pouvons utiliser js pour déterminer si l'utilisateur souhaite quitter, mais dans une application monopage, tous les sauts et sorties sont en fait sur une seule page. l'utilisateur quitte l'itinéraire actuel, mais la méthode fournie par ng pour que les comptes publics quittent l'itinéraire est introuvable
S'il vous plaît, donnez-moi quelques idées~
淡淡烟草味2017-05-15 17:06:53
Je sais seulement que Vue peut le faire
route: {
deactivate() {
...
}
}
淡淡烟草味2017-05-15 17:06:53
Il existe un événement dans ui-router qui peut surveiller les changements d'état. Les paramètres de la fonction de rappel peuvent enregistrer la page actuelle
$rootScope.$on('$stateChangeStart', function (event, toState, fromState) {
});
迷茫2017-05-15 17:06:53
Si ui-router est utilisé comme système de routage dans ng. Vous pouvez utiliser le système d'événements de ui-router pour créer une logique métier correspondante aux modifications de l'état de routage.
$rootScope.$on('$stateChangeStart',
function(event, toState, toParams, fromState, fromParams){
event.preventDefault();
// transitionTo() promise will be rejected with
// a 'transition prevented' error
})
Pour plus de détails, veuillez vous référer à $state dans ui-router
PHP中文网2017-05-15 17:06:53
JS utilise nativement l'événement hashchange pour surveiller si le hachage de la page change. Dans les applications monopage, de nombreux frameworks encapsuleront cette méthode dans une fonction hook.