AngularJS confirme avant le changement de route

Est-il possible d'écouter les changements de route ET de onwindowunload à la fois pour confirmer la page de quitter sans enregistrer les modifications?

Cas d'utilisation:

  • Utilisateur clique sur Retour
  • Utilisateur appuie sur le bouton retour dans le navigateur
  • L'utilisateur tape une URL différente

Si l'utilisateur clique sur "annuler" stop à la page /changement d'itinéraire.

J'ai vu quelques exemples différents mais aucun n'a fonctionné tout à fait raison.

source d'informationauteur amcdnl