我的问题更多是架构问题。在我的项目中,一旦用户登录,他们就会被带到具有多个“小部件”的主页。每个小部件都需要某种API调用。其中有五个使用我自己的API,有一个发布到第三方API。
我的reducer和每个组件的render方法都有一个加载状态。主页是父组件,每个小部件是子组件。
是否最好检索父组件中需要的所有数据,然后将该数据传递到每个子组件中?还是更好地将其拆分成每个子组件调度自己的操作并处理自己的数据?
第一个选项是对我的数据库进行一次大匹配,其中包含我需要的所有信息,第二个选项是对我的数据库进行了几次较小的匹配(尽管时差在我看来可以忽略不计)。
旁注:我本来是选择第一种方法的,但是我遇到了我的应用程序出错的问题,因为我的许多数据嵌套了4层以上。我不确定这是否意味着我需要使用Normalizr之类的库来解决此问题,还是只是我的无知和普遍缺乏Redux知识?
答案 0 :(得分:0)
我本来是选择第一种方法的,但是我遇到了应用程序错误的问题,因为我的许多数据嵌套了4层以上。
这个特殊的问题可以在服务器端解决。 您应始终努力保持数据尽可能平坦。 从您自己的数据库或第三方获取数据,以一种易于客户端读取并将其发送回客户端的方式对其进行变异。
最好检索父级中我需要的所有数据 组件,然后将数据向下传递到每个子组件?要么 最好将其全部分割成每个子组件 调度自己的动作并处理自己的数据?
我会说这取决于。您可以尝试获得尽可能多的初始负载绝对需要的东西,而不会降低性能。接受来自父组件的数据的组件没什么问题。