首页 文章

ReactJS组件通信

提问于
浏览
1

我想知道ReactJS组件之间的通信建议方式是什么 . 我看了一眼related question . 但是,我没有找到足够的答案 . 关键方法似乎如下:

  • 假设只有孩子/父母进行交流 .

  • 通过设置道具实现从父到子的通信,反过来通过将回调作为道具来实现 .

这有以下缺点:

  • 因为兄弟姐妹真的需要't communicate directly, all state which has to be passed back and forth between siblings has to be stored in their common parent. This means that the parent has a lot of state which it doesn' .

  • 传递回调相当不优雅 .

我想做的是添加组件方法/成员以 Build 通信 . 我在想RxJS . 这意味着以下内容:

  • 我接受通信超出了ReactJS处理的功能范围 . 无论如何,情况似乎如此 .

  • 类的成员需要持久化 . 例如,父组件在每次调用其 render 函数时都不应创建新的 <Child /> ,因为在这种情况下,必须重新 Build 所有订阅 . 相反,构造函数必须创建 this.child = <Child /> 对象,而在 render 调用渲染 {this.child} .

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

在第一种情况下:是否存在可扩展且优雅的方式,可以在ReactJS中实现组件之间的通信? ReactJS的开发人员的理由是按照上述方式完成的还是我缺少的东西?

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

1 回答

  • 4

    那么在React中有两种已 Build 的方式来在组件之间进行通信 .

    Observable architechture: Mobx

    Flux like architechture: Redux

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

相关问题