recherche

Maison  >  Questions et réponses  >  le corps du texte

angular.js - 单页应用(ng/vue)该如何监听用户离开当前页面(或者路由)?

场景描述:在ng的某个路由中,需要在用户离开当前路由时提示用户是否确认离开

我的疑惑:如果是普通的应用,我们可以使用js来判断用户是否要离开,但是在单页应用中,所有的跳转离开其实都是在一个页面中,我想判断用户是否离开当前路由,但是没找到ng提供的公户离开路由的方法

求各位前辈的思路~

滿天的星座滿天的星座2744 Il y a quelques jours1217

répondre à tous(4)je répondrai

  • 淡淡烟草味

    淡淡烟草味2017-05-15 17:06:53

    Je sais seulement que Vue peut le faire

    route: {
                deactivate() {
                    ...
                }
            }

    répondre
    0
  • 淡淡烟草味

    淡淡烟草味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) {
    });

    répondre
    0
  • 迷茫

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

    répondre
    0
  • PHP中文网

    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.

    répondre
    0
  • Annulerrépondre