AngularJS UI-Router:如何获得"父母"陈述所有州?

时间:2015-12-12 21:25:17

标签: javascript angularjs angular-ui-router

我正在使用UI路由器,我想让我的路由有一个基础,即用户slug。例如,名为John Doe的用户将拥有一个slug john-doe,并在URL中显示为/@john-doe

我试图将user状态设置为所有其他状态的基础,但我似乎无法找到方法。

我希望这样,一旦用户登录,他/她就会被重定向到/@slug/home,之后的每个状态网址都将以/@slug开头,因此配置文件状态(用户。个人资料)应该有网址/@slug/profile

我尝试通过在我的登录功能中使用$state.go('user', {'slug' : $rootScope.currentUser.slug');来实现它并且它可以工作,但是我必须将类似的内容设置为应用程序上的每个链接,所以我知道必须有更好的方法来执行此操作..加上那不会很好,因为如果在click事件上添加了slug,那么一旦页面被刷新或者那个参数消失了,这是不理想的,因为它只是留下一个{{ 1}} slug缺失。

这是我的/@/profile

app.js

1 个答案:

答案 0 :(得分:0)

您是否尝试将所有子状态的parent属性设置为“user”?或者,您可以将您的孩子命名为“user.signup”,“user.login”等。