What's the difference between $locationChangeSuccess
and $locationChangeStart
?
They are both undocumented events related to window.location
.
The $locationChangeStart
is fired when AngularJS starts to update browser's location based on mutations done via $location
service ($location.path()
, $location.search()
).
It might happen that an application will listen to the $locationChangeStart
event and will call preventDefault()
on it. In this case the second event ($locationChangeSuccess
) won't be broadcasting.
In short: $locationChangeStart
fires when the location gets updated. It is followed by $locationChangeSuccess
if the first action wasn't prevented.
Relevant bits of the source code are here: https://github.com/angular/angular.js/blob/2508b47c1a34dfc834f8fde858574f81af4d287e/src/ng/location.js#L598
来源:https://stackoverflow.com/questions/15006849/whats-the-difference-between-locationchangesuccess-and-locationchangestart