美文网首页React基础
React-组件通信方式总结

React-组件通信方式总结

作者: 生命里那束光 | 来源:发表于2022-04-26 09:45 被阅读0次

    组件间的关系

    父子组件:props
    兄弟组件(非嵌套组件):消息订阅-发布、集中式管理、events包
    祖孙组件(跨级组件):消息订阅-发布、集中式管理、conText(用的少)

    组件之间共享数据(通信方式):

    1. props传值:父传子使用props;子组件向父组件传值通过回调函数

      (1).children props
      (2).render props

    2. 多层嵌套组件通信:使用context共享组件树中的数据(生产者-消费者模式)

      • Provider(生产者):用于生产共享数据的地方。 value:放置共享的数据。
        <Provider></Provider>
      • Consumer(消费者): 接收Provider产生数据。
        <Consumer></Consumer>
    3. 非嵌套组件(兄弟)之间的通信:基于消息订阅-发布者模式 (pubsub)

      这种方式需要安装pubsub-js插件,实现消息的发布和订阅,应用场景是兄弟组件之间传值。执行以下命令安装插件npm install pubsub.js

    4. 非嵌套组件(兄弟)之间的通信:events包的使用

    (1)npm install events --save
    (2)引入 events 包,并向外提供一个事件对象,供通信时使用

    1. 集中式管理:使用redux、dva等等

    比较好的搭配方式

    父子组件:props

    兄弟组件:消息订阅-发布、集中式管理

    祖孙组件(跨级组件):消息订阅-发布、集中式管理、conText(开发用的少,封装插件用的多)

    相关文章

      网友评论

        本文标题:React-组件通信方式总结

        本文链接:https://www.haomeiwen.com/subject/xogfyrtx.html