React组件通信
组件通信的意义
目标任务:
了解为什么需要组件通信
组件是独立且封闭的单元,默认情况下组件只能使用自己的数据(state)
组件化开发的过程中,完整的功能会拆分多个组件,在这个过程中不可避免的需要互相传递一些数据
为了能让各组件之间可以进行互相沟通,数据传递,这个过程就是组件通信
- 父子关系 - 最重要的
- 兄弟关系 - 自定义事件模式产生技术方法 eventBus / 通过共同的父组件通信
- 其它关系 - mobx / redux / zustand
父传子实现
目标任务:
实现父子通信中的父传子,把父组件中的数据传给子组件
实现步骤
- 父组件提供要传递的数据 -
state
- 给子组件标签
添加属性
值为 state中的数据 - 子组件中通过
props
接收父组件中传过来的数据 - 类组件使用this.props获取props对象
- 函数式组件直接通过参数获取props对象