reduxjs-在标准化状态下跟踪冗余数据

时间:2018-11-11 23:25:04

标签: javascript reactjs redux

在redux中标准化数据很常见,但是处理这种情况的最佳方法是什么。

让我们说这是状态形状:

{
  booksList: {
      1: { ... },
      2: { ... },
      3: { ... },
      4: { ... },
      5: { ... }
    }
  coolBooks:  [5, 2, 1],
  hotBooks: [1, 3, 4, 5]
}

现在,应用程序将执行动作以从coolBooks Array中删除ID为5的书,这很容易!但是,如果应用程序抛出动作以从coolBooks列表中删除ID为2的书,该怎么办?我还需要从booksList中删除吗?因为它不再使用了。

  1. 如果您认为我不需要从bookList中删除数据,则不在乎并缓存不必要的内容。 那内存泄漏怎么办?在这个例子中只有5本书。但是在我的应用程序中,如果我不删除不必要的书,则可能是booksList中的数千个实体。

  2. 如果您认为我需要从booksList中删除该实体(如果book在coolBooks / hotBooks中都不存在)。最佳做法是什么?在我的应用程序中,不仅2个类别(coolBooks / hotBooks)可以是100。所以对于每个删除操作检查100个数组,这本书不存在吗? 性能如何

0 个答案:

没有答案