Używam Angular2 i UI-Router 2 w trybie nie-hash dla prostej aplikacji z niektórymi linkami zakotwiczonymi w menu. Na przykład:Jak mogę zapobiec wartości mieszania stałego adresu URL z routerem UI?
- https://example.com/blah/blech
- https://example.com/blah/blech#specifications
- https://example.com/blah/derp
Jeśli pójdę z trasy z mieszania w adresie URL do jednego bez, hash pozostaje. Na przykład przejście z /blah/blech#specifications
do /blah/derp
za pośrednictwem menu powoduje wyświetlenie adresu przeglądarki /blah/derp#specifications
. Oczywiście jest to niepoprawne i w rzeczywistości nieco ograniczające, na przykład gdy wrócę do /blah/blech
, a wartość skrótu pozostanie, wysyłając okno do tej lokalizacji zakotwiczenia.
Innym efektem ubocznym jest odświeżanie strony w dość nieprzewidywalny sposób. Przejście z /blah/derp
do /blah/blech#specifications
powoduje odświeżenie całej strony.
Konfiguracja jest dość standardowe:
export let derpState: Ng2StateDeclaration = {
name: 'derpState',
component: DerpComponent,
url: '/derp'
}
Jak mogę połączyć linki hash z UI-Router 2 z dobrymi wynikami? (Alternatywnie, w jaki sposób mogę użyć linków kotwiczących z UI-Routerem w inny sposób?)
Dziękuję. Ostatnia wersja. Podaj tutaj objaśnienie swojego podejścia. Nie widzę sposobu, w jaki obsługiwane są linki zakotwiczone. – isherwood