使用React上下文而不是将同一对象传递给数十个组件更好吗?

问题描述 投票:0回答:2

我正在网站上添加用户评论,我需要将用户对象传递给每个用户评论。我有一个叫做UserReplyForm的React组件,它处理新评论的提交。用户可以回复每个评论,因此在视觉上有一个组件可以显示评论,并且在每个评论下方都有一个表格可以回复。

用户对象存储在React上下文中。因为我将有数十个回复,并且可能会有数十个回复,所以我想知道通过React上下文获取用户对象在内存优​​化方面是否更好,因为如果我将它作为道具传递,则该用户对象将被复制次,因为有答复。当我说复制时,我的意思是函数参数是按Javascript中的值复制的。另一方面,我认为我将从用户上下文中获取用户对象。

EDIT:考虑一下,使用上下文并没有真正的帮助,因为如果使用上下文,我会将上下文结果保存在一个局部变量中,该局部变量也使用内存。因此,道具和上下文会导致相同的内存使用情况。

javascript reactjs pass-by-value
2个回答
0
投票

当然,这是上下文的目的。


0
投票

通过引用传递的函数及其参数也通过引用传递(如果是对象,数组,..)并链接到函数指针。调用函数时,它将通过链接指针获取其参数的值。这只是我的想法,随时可以纠正。

© www.soinside.com 2019 - 2024. All rights reserved.