更好的反应组成?

时间:2017-08-23 17:30:39

标签: reactjs

假设我有一个 A 组件,可以呈现2个组件 B C

B C 会呈现出类别,cat_idprops。 他们将分别使用cat_id调用 apiB apiC

1

最好将cat_id存储在父级( A )中,并将cat_id作为props传递给 B C ?注意cat_id是动态的,并存储为 A 中的状态对象。

A 致电setState以更新cat_id时, B C 将调用{{{ 1}}。

2

或者更好的是在 A 中调用api,并将结果作为道具传递给 B C ?< / p>

我问的原因是因为我现在正在使用选项1。子组件在单个页面加载上有4个渲染。我猜测父母中的componentDidUpdate太多了。

我花了好几个小时尝试移动物品并改变setStatecomponentDidUpdate中的条件,但它看起来仍然很慢。

在我尝试选项2之前,想知道是否有人已经知道哪个是更好的React组件组合。

1 个答案:

答案 0 :(得分:4)

我觉得你已经回答了一些问题。是的,在您的情况下,假设您现在只使用反应,我会在A中进行API调用,并将数据作为道具传递给BC

如果你正在使用像redux这样的东西,你可以使用其他的组合选项,你可以触发一个动作,让减速器为你处理API调用,然后从那里更新你的商店。但如果您只是使用反应,选项2就完全没问题了。