我正在尝试使用AngularJS在我的模板部分中放置多个控制器 - 我遇到的问题是第一层的问题,直接链接到这些子控制器及其相关的片段。
一个例子是用户帐户的管理页面,比如说我在用户列表上,想要从列表的密码更改用户,我点击他们的更改密码按钮,并希望将用户重定向到{ {1}}而不是#/ManageUsers/ChangePassword/?UserID=<uid here>
或类似,但Angular文档(或缺乏文档)表明这是不可能的,或者不是'The Angular Way'...
由于我的团队希望将这些独立的控制器保留为部分控制器,因此使用Angular有一种非黑客的方法吗?
答案 0 :(得分:2)
最近发表了一篇博客文章,介绍了解决与AngularJS深层链接的一种可行方法。它具有父/子实现风格,如果您只需要更改子项的内容,则不需要更新父部分,这使得它非常整洁。
就在这里:http://www.bennadel.com/blog/2441-Nested-Views-Routing-And-Deep-Linking-With-AngularJS.htm
答案 1 :(得分:1)
为什么不指向#/ManageUsers/ChangePassword/:UserID
?您可以从$ routeParams获取UserID。请参阅$route页面上的示例。
您甚至可以创建网址#/ManageUsers/:OrganizationID/:SectorId/:UserID/ChangePassword/Confirmation
#/ManageUsers/10/2/32/ChangePassword/Confirmation
之类的路由