AngularJS aby osiągnąć cel bycia Single-page Application oraz w dalszym ciągu pozwalania na zmianę adresu URL wykorzystuje tak zwany fragment id (część URI wykorzystywana przy dostępie do określonych miejsc na stronach).
Do czego normalnie służy fragment id?
W klasycznym przykładzie użycia fragment id służy do wskazania zakotwiczonego fragmentu strony. Czyli najpierw należy stworzyć tak zwany haczyk (w przypadku html będzie to nadanie id elementu):
<div id="hook">Some text</div>
I teraz wprowadzając w przeglądarkę URL z fragment id umieszczonym po znaku # powinniśmy zostać przekierowani do konkretnego elementu.
https://somenotexistingdomain.pl#hook
Przykładowo klikając w ten link zostaniemy przeniesieni do konkretnego elementu strony wykorzystując haczyk (zwróć uwagę na znak # w URL).
W AngularJS
Jak już wcześniej było wspomniane, AngularJS wykorzystuje fragment do obsługi zmiany adresu. Kilka przykładów:
https://somenotexistingdomain.pl#/test/features/main
https://somenotexistingdomain.pl#/app/features/contact/details