我有一个内容管理系统,强制网页的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