在AngularJS中,我们在定义状态时使用ui-router:
.state('myState', {
url: 'some-user-friendly-url'
...
})
因此,我们可以设置url
和name
。如果我们不想担心网址并且在我们想要使用$state.go('myState')
时只记住州名,那就很好了。
我开始使用Angular,但在其原生路由器中,path
与routerLink
指令一起使用以转到路由,同时将其用作网址。
本机路由器是否有针对该案例的解决方案?或者,与Angular的UI路由器一起使用会更好吗?
答案 0 :(得分:1)
Angular(2+)路由器没有命名状态 - 与使用$state.go(<some state name>)
的UI-Router做同样的事情,你可以使用router.navigate(<some path>)
来处理Angular路由器。我个人的建议是尝试角度路由器,看看你是否真的错过了那些命名状态。由于默认路由器非常有限,因此UI路由器满足了AngularJS的实际需求。新的路由器从UI路由器(和其他路由器)学到了很多东西,而且功能更强大,所以我建议你试试看它是否能满足你的需求。
但是,如果你必须拥有状态,你也可以在Angular中使用UI路由器。