Reactjs 如何将道具传递给特定类型的所有子孙孙

Reactjs 如何将道具传递给特定类型的所有子孙孙,reactjs,Reactjs,我希望有一个父组件能够找到某个React类类型的所有子代,并向其传递一个prop。因此,考虑到这样的结构: <Parent> <div> <em> <GimmeProps /> </em> </div> <GimmeProps /> </Parent> 我该怎么做?我已经试过递归地使用React.Children.forEach,但是我不能确定React类的类

我希望有一个父组件能够找到某个React类类型的所有子代,并向其传递一个prop。因此,考虑到这样的结构:

<Parent>
  <div>
    <em>
      <GimmeProps />
    </em>
  </div>
  <GimmeProps />
</Parent>

我该怎么做?我已经试过递归地使用
React.Children.forEach
,但是我不能确定React类的类型,我认为我不能这样设置道具。

我相信你要找的是
上下文,而不是道具。上下文在许多方面的行为就像道具一样,但它们是从一个组件传递给其所有子代和子代的

可以使用
this.context.foo

下面是一篇解释如何使用道具的博客:

上下文的官方文档:
上下文
有被弃用的风险。我看到React开发人员之间进行了讨论,他们中没有人真正喜欢API的这一部分。@ffxsam,那么有什么替代方案呢?拥有你自己的特殊
上下文
道具,让每一层手动传递下去?@ReneSaarsoo不确定替代方案是什么,这就是我在这里发布的原因。我可以使用通量架构,但我正试图保持这些组件100%纯反应。哦。。。很抱歉我没注意到你就是发布原始问题的那个人。
<GimmeProps magic={this.callback} />