我有一個內容管理系統,強制網頁的URL爲特定模式。我們需要有條件地重寫這些鏈接的hrefs。AngularJS:ui路由器href重寫爲ui-sref
CMS將打印在頁面上是這樣的:
<a href="/path/to/the/zoo/gorilla.html">Go</a>
我們的路由器需要實際指向
#/zoo/gorilla
如果我們寫了這個鏈接自己,它會是什麼樣子:
<a ui-sref="zoo('gorilla')>Go</a>
問題是,我們不能總是保證/ zoo/gorilla部分意味着我們在動物園('gor利亞')。
最簡單的方法是將解析CMS網址到路由器的網址,只是這樣做:
link.attr("href", "#/zoo/gorilla");
我明白爲什麼這是典型的對UI的路由器的想法,但我希望能找到一種方法將它用於這一個奇怪的案例。
我問嘗試過這一點。更改href會將URL指向正確的哈希,但狀態不會識別此更改。 – oooyaya
@oooyaya更改了代碼以允許路由器查看更改 –
這就是我所做的。這個問題其實是另一回事 - 使用ui-router命名的子視圖,並且必須將它們定位在視圖對象中。這就是爲什麼這個觀點從未改變 - 我沒有告訴它去哪裏。 – oooyaya