如何在不显式传递道具的情况下,将道具传递到所有子组件

How can I pass a prop down through all subcomponents without doing so explicitly?

本文关键字:组件 情况下      更新时间:2023-09-26

我使用redux和react来管理复杂表单的状态,该表单将是一个单独的对象。我的表单将有嵌套的数据结构,用户可以编辑,例如:申请人。住址国家/地区将通过我表格上的文本框进行更新。我有一个想法,做了一个名为UPDATE_MODEL的操作,可以通过传递以下对象来进行更新:

{Applicant: {Address: {Country: 'France'} } }

它会被还原器与状态合并。更新模型的调度需要传递到每个表单字段,以及一个用于告诉组件它在整个表单树中的位置的道具。除了不在整个表单中传递这两个道具,我还有其他选择吗?这听起来很乱。

是的。您可以使用React context

ReactContext就是专门为此而设计的。

这个链接(到ReactJS文档(有一个很好的例子。但这是一个实验性的功能,所以要谨慎使用。

这个链接(指向博客(对何时使用和何时不使用有一个很好的总结。

相关文章: