在我的单页应用程序(Javascript(AngularJs)Web应用程序)中,我正在显示分页项目列表。每页显示10个项目。为了在用户导航到其他页面时保留用户打开的当前分页,我将当前页数放在浏览器的localStorage中。以下是工作流程示例:
- 用户进入myItemsList.html。 - 他打开第2页,涉及URL:myItemsList.html?page=2。 - 然后,他转到另一个页面:myOtherPage.html。 - 他回到最初指向myItemsList.html的链接,由于localStorage直接显示myItemsList.html?page=2页面,以便可能继续导航。
这会让用户感到困惑,也许期望以页面1作为新的起始导航。如果我在列表顶部显示一种标签,如“第2页”,以警告他正在查看其导航的先前部分,那么这会对用户体验友好吗?或者我完全避免保留当前分页?如果不保留当前查看的页面,则可能会发生以下情况:
- 用户进入myItemsList.html。 - 他打开第2页,涉及URL:myItemsList.html?page=2。 - 他打开此页面上的项(“显示”页面),导致:myItemsList.html?id=123。 - 他单击浏览器的返回按钮,导致myItemsList.html刷新(因为是单页应用程序)。当前的分页(第2页)将丢失,用户需要重新启动它才能继续发现项目。这似乎非常微妙...对于这种情况,我应该选择什么策略?
- 用户进入myItemsList.html。 - 他打开第2页,涉及URL:myItemsList.html?page=2。 - 然后,他转到另一个页面:myOtherPage.html。 - 他回到最初指向myItemsList.html的链接,由于localStorage直接显示myItemsList.html?page=2页面,以便可能继续导航。
这会让用户感到困惑,也许期望以页面1作为新的起始导航。如果我在列表顶部显示一种标签,如“第2页”,以警告他正在查看其导航的先前部分,那么这会对用户体验友好吗?或者我完全避免保留当前分页?如果不保留当前查看的页面,则可能会发生以下情况:
- 用户进入myItemsList.html。 - 他打开第2页,涉及URL:myItemsList.html?page=2。 - 他打开此页面上的项(“显示”页面),导致:myItemsList.html?id=123。 - 他单击浏览器的返回按钮,导致myItemsList.html刷新(因为是单页应用程序)。当前的分页(第2页)将丢失,用户需要重新启动它才能继续发现项目。这似乎非常微妙...对于这种情况,我应该选择什么策略?