【问题标题】:Redux prevent unwanted effectRedux 防止不必要的影响
【发布时间】:2021-02-06 18:25:20
【问题描述】:

你好

我如何防止这种影响:

我想要的效果:

但是在使用多个产品调度相同的操作时,产品不在数组的最后位置(这将是不需要的效果,因为我需要转到另一个页面并返回购物车才能看到效果):

我上传了一个更能描述问题的视频: https://drive.google.com/file/d/1miZA4B1Ay5OZZBGPj1bCcQHsGv21oVW_/view

【问题讨论】:

标签: reactjs redux


【解决方案1】:

在视频中,您删除了购物车中的第一项,但第二项消失了,而第一项仍然显示。在您商店的屏幕截图中,您会看到实际上我们确实删除了第一项并且第二项移动到了第一个位置,这正是我们想要的。所以调度操作进行得很好,并达到了预期的效果。

这意味着将数据从商店中取出并在您的应用中显示时存在问题。应用程序识别出数组从长度 2 变为长度 1,但它没有识别出 array[0] 的内容发生了变化。

您可能正在记忆某些东西并缺少依赖项,无论是在反应中还是在记忆选择器中。看起来你可能是根据数组索引而不是数组的内容来记忆的。

您决定为购物车使用稀疏数组,因为在您的第一个屏幕截图中只有一个项目,但它的索引是2。那是故意的吗?为什么?

【讨论】:

  • 您好,问题已通过我自己的唯一索引更改索引键得到解决
  • 现在,如果我想从我的购物车中删除他们不在键的最后位置的第一个或另一个项目,redux 和 react 很清楚我要删除什么,但问题是反应方面不是还原
猜你喜欢
  • 1970-01-01
  • 2018-06-06
  • 1970-01-01
  • 2017-12-18
  • 1970-01-01
  • 1970-01-01
  • 2022-08-16
  • 1970-01-01
  • 2021-02-04
相关资源
最近更新 更多