我正在设计应用程序的Redux端,特别是我的State Object。
我将使用类似于此的POST API:
/api/posts
使用POST方法。
如果我遵循过去使用过的规则,我最终会在我的全局State Object上使用posts属性和activePost属性。
可能由帖子缩减器产生的posts属性可能是一个数组,它将包含我在应用程序中所有不同帖子的列表。
我想将我的帖子列表存储在Object而不是数组中,只需完全消除对activePost的需求。所以它看起来像这样:
{
4: {title: 'Hello', id: 4, content: 'Hi', tags: 'greetings'},
12: {title: 'Bye', id: 12, content: 'Bye', tags: 'greetings'},
}
请注意,在此对象内部,我说密钥是帖子的id,值是帖子本身。因此,对象从数字4开始,在结束花括号处关闭。它的id为4,使用4的键,因为它是帖子的id。下面的下一个也一样。
这样做的原因是为了更容易找到我提取的所有帖子中的特定帖子。
即使有大量的帖子,这还可以吗?这是最好的做法吗?为什么或者为什么不?如果这不起任何作用,请提供记录在案的原因。谢谢。
答案 0 :(得分:0)
我认为这是最好的做法,实际上是一个非常先进的概念。我听到同事们说阵列最适合大型数据集,但没有太多文档来支持他们的声明。
这可能需要一个非常具有挑战性的重构,例如:
state.posts[postId]
这将返回给定的帖子,postId来自url的id号,然后使用该号码查看许多不同帖子的对象。
我的理解是,这就是它在生产和大型应用程序中的完成程度如何,因此它实际上适用于大数据。