【发布时间】:2017-06-18 19:27:00
【问题描述】:
我不确定我的术语是否完全正确,但我的问题围绕着显示类别、子类别和子类别列表的目标。
类别、子类别和子子类别的完整数量约为 100(每个都有唯一的名称)。这个完整的类别树的任何一个分支中的最高节点数约为 10。我只需要显示这些分支中的任何一个中的每个节点的名称以及图像。
在我正在开发的 UI 类型中,这些不同的列表永远不会同时出现。
例如,当您从categories 列表中单击category 时,类别列表会消失,然后您应该会看到该类别的sub-categories 列表。当您单击sub-category 时,子类别列表消失,然后您会看到属于最近单击的sub-category 的sub-sub-categories 列表等等。
知道了这一点,我的问题是:
对基本上可以是 JSON 对象数组的“类别树”进行一次初始提取是否有任何缺点,每个对象都包含每个类别的名称和子类别等等? (只需保留此类别树数据即可呈现我需要的任何列表)
或
我是否应该为只是初始类别进行初始提取,然后在他们单击类别后再次提取子类别列表等? (仅在需要时获取我需要的内容)
【问题讨论】:
-
取决于您的要求。树有多大,你的页面在什么设备上运行,连接有多好,用户是否期望小的初始加载时间或子树之间的快速切换?
-
在体裁中,我喜欢尽可能多地预先加载,只要页面不会永远加载。这可以让用户在通过隧道时“导航”,减少电池消耗,并降低服务器使用/带宽
-
你甚至可以更进一步,将初始结果注入标记(作为
<script>节点内的JSON,而不是呈现的html),你只能获取最初是第一个级别,但在后台预取更多级别。您还可以批量获取多个级别,如果事实证明,人们通常沿着这条路径导航(另一方面,如果事实证明,您应该展平树或提升这些经常使用的子子-分类到更高的级别),...但是正如 Bergi 已经说过的,这在很大程度上取决于您的数据以及您的客户偏好/行为。 -
大家好,感谢@Thomas 和其他人的反馈。我刚刚编辑了我的问题,并详细说明了我的用例。
标签: javascript reactjs fetch dataflow fetching-strategy