gpt4 book ai didi

javascript - Angular 保持 Controller 之间的选择并支持路由

转载 作者:行者123 更新时间:2023-12-03 10:32:00 25 4
gpt4 key购买 nike

我有一个显示一组项目的LIST View 。在此 View 中,用户可以选择项目。

然后我有一个 DETAILS View ,显示有关所选项目的详细信息。

应用程序从LIST View 移动到DETAILS View ,更改位置。所选项目作为 URL 参数传递(例如/cars/ids=1,2,3)。

将 ID 放入 URL 中后,用户可以为 DETAILS View 的 URL 添加书签,并在再次打开添加书签的 URL 时看到元素。

DETAILS View 有一个后退按钮,可让用户返回到LIST View 。当用户返回到 LIST View 时,我希望之前选定的元素显示为选定的。

如何将DETAILS中选定的项目传回LIST

我看到两个解决方案:

  1. 将选择状态保存在服务中。当使用 DETAILS View URL 打开应用程序时, Controller 会在服务中设置从 URL 获取的选定项目。

  2. 使用与从 LIST 移动到 DETAILS 相同的机制:将所选项目作为参数放入 URL 中。然后LIST Controller 从URL中检索它。

哪种解决方案更好?

最佳答案

首先,我认为您的两种解决方案都可能有效。

1) 对用户重新加载页面很敏感

2)总体来说很好,但要注意网址中的数据量是否增长

最终这更多是品味问题..

您希望用户使用所选 ID 为列表页面添加书签吗?如果没有,那么我想介绍第三种可能的解决方案

var parameters = [ id1, id2, id3 ];

// set in detail view
localStorage.setItem('params',JSON.stringify(parameters));

// to retrieve in list view
var selectedParameters = JSON.parse(localStorage.getItem('params'))

这样你就不必担心用户刷新页面..

祝你好运..

关于javascript - Angular 保持 Controller 之间的选择并支持路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29166025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com