我希望有一个父组件能够找到某个React类类型的所有后代,并将其传递给prop。所以给出这样的结构:
<Parent>
<div>
<em>
<GimmeProps />
</em>
</div>
<GimmeProps />
</Parent>
componentDidMount
的{{1}}方法可以找到所有Parent
元素并将其设置为:
<GimmeProps>
我该怎么做?我已经尝试递归使用<GimmeProps magic={this.callback} />
,但我无法告诉React类类型,我也不认为我可以这样设置道具。
答案 0 :(得分:1)
我相信你所寻找的是context
,而不是道具。上下文在很多方面表现得像道具一样,但它们正在从一个组件传递给他们所有的孩子和孙子。
可以使用this.context.foo
这是一篇解释如何使用道具的博文: https://www.tildedave.com/2014/11/15/introduction-to-contexts-in-react-js.html
上下文的官方反应文件: https://facebook.github.io/react/docs/context.html