You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 12, 2024. It is now read-only.
I am using angular 1.3.16, in Google Chrome.
I found a wrong behavior of $locationChangeSuccess event.
To reproduce:
open a page like "path/#"
click to a link to go to a page like "path/#arg=123"
click to a link to go to a page like "path/#arg=555"
now, click to "Back" button of browser. You will go to "path/#arg=123"; $locationChangeSuccess event is fires.
click another time to "Back" button of browser. You will go to "path/#"; sometimes, $locationChangeSuccess event is NOT fired ($locationChangeStart is fired).
click to "foreward" button of browser. You will go to "path/#arg=123"; $locationChangeSuccess is fired.
click to "back" button of browser. You will go to "path/#"; $locationChangeSuccess is NOT fired.
I found in "angular.js" source code that there is a comparison between $location.absUrl() and newUrl local variable. $location.absUrl() returns "path/", and newUrl returns "path/#".
Row 11486: if ($location.absUrl() !== newUrl) return;
This comparison is made after "$locationChangeStart" and before "$locationChangeSuccess". The comparison do exit by function.