$ locationChangeSuccess和$ locationChangeStart有什么区别?
它们都是与window.location相关的无证件事件。
根据基于$ location服务($ location.path(),$ location.search())的突变,AngularJS开始更新浏览器的位置时,$ locationChangeStart被触发。
可能会发生一个应用程序将收听$ locationChangeStart事件,并将调用preventDefault()。在这种情况下,第二个事件($ locationChangeSuccess)将不会播放。
简而言之:$ locationChangeStart在位置更新时触发。之后是$ locationChangeSuccess,如果第一个操作没有被阻止。
源代码的相关位在这里:
https://github.com/angular/angular.js/blob/2508b47c1a34dfc834f8fde858574f81af4d287e/src/ng/location.js#L598