AngularJS路由是否支持“面包屑视图”?

3
我不知道这种路由/导航方式是否有名称,但play.spotify.com是一个很好的例子。简而言之,在每个导航决策时,网站会加载一个新视图而不删除旧视图。这允许出现令人愉悦的“视觉面包屑”,增强单页应用程序中连续性的感觉。
关键特点:
- URL仅反映当前状态,因此重新加载(或链接分享)会删除此历史记录。 - 历史长度似乎是任意的 - 这不是分层树状导航,而是图形上的路径。

play.spotify.com

我的问题是:

  • 在Angular中,是否有一种路由方案(通过ui-router或其他方式)可以实现这一点?
  • 这个有名字吗?

我所能想到的唯一实现方法是在ui-router中以编程方式添加状态,如“Angular - UI Router - programmatically add states”,但这似乎非常不正规。

1个回答

0

我不确定它是否有一个名称,如果有的话,我从未听说过。在上面的视频中展示的行为可以通过使用包含侧边栏的布局来实现,这些侧边栏在路由更改时不会改变。

正在更改的部分都在中心位置,因此可以采用基于小部件的方法,其中标题、页脚和侧边栏位于主页面上。然后,在主页面的中间放置<div ui-view></div>,仅当您选择新的路由时,此内容才会更改。

希望这能帮到您。


嗨Graham,谢谢你的回答。我明白侧边栏不应该是可变视图的一部分。然而,对于如何实现“保存”过去的视图功能,我还不太清楚。请注意,在GIF的后半部分,我能够通过导航历史进行点击,而无需执行任何AJAX调用。 - JosephSlote

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接