Mam system CMS, który wymusza adresy URL stron o określonym wzorze. Musimy warunkowo przepisać href do tych linków.AngularJS: ui-router href przepisuje na ui-sref
CMS zostanie wydrukowany na stronie coś takiego:
<a href="/path/to/the/zoo/gorilla.html">Go</a>
naszym routerze musi rzeczywiście wskazują na
#/zoo/gorilla
Gdybyśmy pisemnej ten link siebie, to będzie wyglądać:
<a ui-sref="zoo('gorilla')>Go</a>
Problem polega na tym, że nie zawsze możemy zagwarantować, że część/zoo/goryl oznacza, że jesteśmy w zoo ("gor illa ").
Najprostszym sposobem byłoby analizować url CMS do adresu routera i po prostu zrobić coś takiego:
link.attr("href", "#/zoo/gorilla");
rozumiem dlaczego tak jest zazwyczaj przeciwko samej idei UI-router, ale I” Mam nadzieję, że znajdę sposób na wykorzystanie tego jednego dziwnego przypadku.
próbowałem tego wcześniej pytania. Zmiana href wskazywałaby URL na odpowiedni skrót, ale stan nie rozpoznaje tej zmiany. – oooyaya
@oooyaya zmienił kod, aby router mógł zobaczyć zmianę –
To właśnie zrobiłem. Problem polegał na czymś innym - użyciu pod-widoków o nazwie routery-ui i skierowaniu ich w obiekcie widoków. Dlatego widok nigdy się nie zmienił - nie mówiłem mu, gdzie mam iść. – oooyaya