gpt4 book ai didi

javascript - ReactJS组件通信

转载 作者:行者123 更新时间:2023-11-30 09:42:54 26 4
gpt4 key购买 nike

我想知道在 ReactJS 组件之间进行通信的推荐方式是什么。我看了一下related question 。但是,我发现答案不够充分。主要方法如下:

  1. 假设只有 child / parent 进行交流。
  2. 父级到子级的通信是通过设置 props 来实现的,反之则是通过回调作为 props 来实现。

这有以下缺点:

  1. 由于 sibling 无法直接通信,因此必须在 sibling 之间来回传递的所有状态都必须存储在其共同的父级中。这意味着父级有很多它并不真正需要的状态。
  2. 传递回调相当不优雅。

我想做的是添加到组件方法/成员以建立通信。我正在思考 RxJS 。这意味着以下内容:

  1. 我承认通信超出了 ReactJS 处理的功能范围。无论如何,情况似乎确实如此。
  2. 类的成员需要具有持久性。例如,父组件不应创建新的 <Child />每次调用其render期间函数,因为在这种情况下,所有订阅都必须重新建立。相反,构造函数必须创建一个 this.child = <Child />对象和 render调用渲染{this.child}相反。

我的问题是:组件通信是否由 ReactJS 以某种方式处理,或者开发人员应该以其他方式处理?

第一种情况:ReactJS 中是否有一种可扩展且优雅的方式来实现组件之间的通信? ReactJS 开发人员的基本原理是按照上述方式完成的还是我遗漏了什么?

在第二种情况下:组件应该如何通信?

最佳答案

React 有两种既定的方式在组件之间进行通信。

可观察的架构: Mobx

类似 Flux 的架构: Redux

注意:如果您不确定从什么开始,请查看 mobx :)

关于javascript - ReactJS组件通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40289494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com