【发布时间】:2021-11-11 09:32:46
【问题描述】:
我查看了其他人与此相关的问题,但找不到合适的答案。我想将孩子传递给一个组件,然后在我想要它们的地方拉出特定的孩子,我见过的大多数例子只是让孩子在同一个地方渲染。
我的组件看起来像这样 -
<ParentComponent>
<ChildOne/>
<ChildTwo/>
<ParentComponent/>
当我在父组件中记录 props.children 时,我得到一个包含两个子对象作为对象的数组。有没有一种简单的方法来拉出我需要它的特定孩子,例如{props.children.ChildOne},目前我正在使用props.children[0],这并不理想,因为我们将动态传递孩子
将来,数组长度可能会改变。
非常感谢任何帮助!
【问题讨论】:
-
这里有很多元素,要检查子元素的类型:stackoverflow.com/questions/27366077/…
-
显然,你需要使用
React.Children和比较child.type === (<ChildOne/>).type或child.type === ChildOne。 -
所有这些似乎都已准备好生产(最小化后工作)。