在AngularJS中深层链接的多层

问题描述:

我试图在AngularJS的模板部分中放置多个控制器 - 我遇到的问题是第一层,直接链接到这些子控制器及其相关片段。在AngularJS中深层链接的多层

一个例子是用户帐户的管理页面,例如我在用户列表中,并且想要从列表的密码中更改用户,我单击他们的change-password按钮,并且想要将用户重定向到#/ManageUsers/ChangePassword/?UserID=<uid here>而不是#/ManageUsers_ChangePassword/或相似,但关于这一主题的角度文档(或缺乏)表明,这是不可能的,或者不是“角路” ......

作为我的团队希望把这些单独的控制器作为偏见,是否有一个非hacky的方式与Angular做到这一点?

为什么不直接到#/ManageUsers/ChangePassword/:UserID?您可以从$ routeParams获取用户标识。请参阅$route页面上的示例。

,你甚至可以创建一个像#/ManageUsers/:OrganizationID/:SectorId/:UserID/ChangePassword/Confirmation航线将由URL #/ManageUsers/10/2/32/ChangePassword/Confirmation

+0

请问这种方法允许控制器为ManageUsers保持ChangePassword的控制器的家长吗?我的意思是,在ManageUsers的控制器内部单独的'ng-view'然后加载'ChangePassword'视图/控制器? – Zoey 2012-07-07 19:18:38

+0

ChangePassword控制器真的需要成为ManageUsers的孩子吗?它真的不能单独工作? – 2012-07-07 19:39:33

+0

它会使它更容易保持它的孩子,是的 - 我可以看到,这将使这个系统在角度可行的方式将允许一个接口行为类似于当前routeProvider,即使它是由父范围封装,但我不认为他们有这个模块... – Zoey 2012-07-09 07:00:21

出现了最近的一篇博客有关解决深,AngularJS连接的一种可能的方式来使用。它有一个父母/孩子的实施风格,如果你只需要改变孩子的内容,就不需要更新父母的部分,这使得它非常整洁。

它在这里:http://www.bennadel.com/blog/2441-Nested-Views-Routing-And-Deep-Linking-With-AngularJS.htm