【发布时间】:2016-01-19 04:20:39
【问题描述】:
对于我的第一个 React 应用程序,我需要显示一个包含组项、读取项和写入项的菜单层次结构(还有更多,但这对于本示例来说已经足够了)。
每个读取项和写入项都连接到 JSON API 中的一个数据点:每个项都有一个资源(例如 /api/1.0/fruits)和一个 json 路径(例如 data.color)。
显示菜单时,应从 Web 服务中获取所有值。但我不希望每个项目都独立获取其值,因为在典型情况下,相同的资源会被多次读取。
我还有一个静态的、无状态的菜单结构,以及构建视图的基础。我可以在这个菜单结构的根菜单项上调用一个方法getRequiredResources(),它会返回一组资源。
但后来我引入了动态菜单项,因此根据菜单项的状态需要不同的资源。我不能再使用静态菜单结构来收集所有需要的资源,因为它不知道每个项目的状态。
关于如何处理这个问题的任何提示?如果我可以访问子菜单项组件,它们拥有足够的状态来返回所需资源的列表,但我认为这不是推荐的模式......?
我使用 Flux 架构进行数据流。
【问题讨论】:
-
我正在考虑让每个组件在需要时排队获取资源。安装后,它们会立即将此类获取请求放入队列中。这是一种理智的处理方式吗?你将如何实施它?作为通量动作?队列应该放在哪里?应该什么时候处理队列?
标签: javascript reactjs flux