Qual è la differenza tra $locationChangeSuccess
e $locationChangeStart
?
Sono entrambi eventi non documentati relativi a window.location
.
Qual è la differenza tra $locationChangeSuccess
e $locationChangeStart
?
Sono entrambi eventi non documentati relativi a window.location
.
Il $locationChangeStart
viene attivato quando AngularJS inizia ad aggiornare la posizione del browser sulla base di mutazioni fatto tramite $location
servizio ($location.path()
, $location.search()
).
Potrebbe accadere che un'applicazione ascolti l'evento $locationChangeStart
e chiamerà lo preventDefault()
su di esso. In questo caso il secondo evento ($locationChangeSuccess
) non trasmetterà.
In breve: $locationChangeStart
si attiva quando la posizione viene aggiornata. È seguito da $locationChangeSuccess
se la prima azione non è stata impedita.
bit rilevanti del codice sorgente sono qui: https://github.com/angular/angular.js/blob/2508b47c1a34dfc834f8fde858574f81af4d287e/src/ng/location.js#L598