代码之家  ›  专栏  ›  技术社区  ›  Sam

防止在redux中显示另一个对象的数据

  •  0
  • Sam  · 技术社区  · 6 年前

    在我的 React/Redux 应用程序,我有一个 timelineReducer 它允许我集中管理不同对象(如项目、任务等)的时间线。

    最近发现了一个我以前没有注意到的错误,因为它需要一系列的环境才能发生。

    当我请求父对象的时间线时,我调用一个操作,该操作发出一个api调用并设置 timeline: [] 数组中 时间控制器 .

    但是,如果我要求 Project A 很快改变主意 Task B 碰巧当时网络连接很慢,我得到的时间线数据属于 项目A 即使我在里面 任务B 页面。

    我确实有清理程序 componentWillUnmount() 生命周期方法,但看起来清理例程在网络响应到达并设置 时间线:[ ] 在我的减速机数组中,我得到了错误的数据。

    有人遇到过这样的情况吗?在我尝试重新发明轮子之前,我想看看在这种情况下是否有一种标准的方法。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Rohith Murali    6 年前

    我也遇到过类似的情况,我在timeline[]中添加了一个引用对象,比如 {project:'A',timeline:[]} 是我的有效载荷。所以这意味着这个时间线是参考项目A的,使用这个数组的组件将首先验证项目的值以确认它是项目A的数组