我的问题是“当我想要访问/响应子组件数据时,有没有办法避免在树深处发送回调”。
我有一个组件 Application
包含一个子组件 Person
又包含一个子组件 TraitCollection
又包含一个子组件特质
。
当 Trait
改变时,我想将数据发送回 Application
以转发给 Application
中名为 PersonList< 的另一个 child
.
我目前的解决方案是将回调作为 Prop 发送给每个 child 。每个回调函数构造并附加最终到达 Application
的数据,我将其作为 prop 传递给 PersonList
。
我可以想象“添加更多级别”或将组件拆分为更小的部分将使此回调链进一步复杂化。
是否有任何其他方法可以做到这一点,或者这是在 React 中处理从子级向父级传递数据的最佳方式?
最佳答案
您处理它的方式是推荐的方式,也是最像 React 的方式。除了您发现的问题之外,这种方法本身没有任何问题。看起来像 Redux可以帮你解决那个问题。 Redux 让您可以使用通用存储和基于 Action 创建器、 Action 和缩减器的良好设计模式来统一 React 应用程序的状态。
关于javascript - React JS 如何避免深度回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45934970/