# 页面发布订阅通信插件

# pubsub-js

订阅者--发布者模式

订阅者是接收数据,发布者是把自己的数据分享出去,然后碰到订阅者接收数据。

  1. 安装
yarn add pubsub-js
  1. 页面引入
import PubSub from 'pubsub-js'
  1. 发布数据页面使用

定义一个方法,方法内

PubSub.publish('addTodo', obj);

‘addTodo’是约定的名称,obj是数据

  1. 接收数据页面使用
state = {
    pubsub: 0,
}
 
// react 组件挂载到DOM后执行,生命周期
componentDidMount() {
     this.state.pubsub = PubSub.subscribe('addTodo', (msg, data) => {
      this.increaseTodos(data);
    })
}

‘addTodo'是约定好的双方要一样,后面的函数,msg参数,是约定的名字,就是‘addTodo’,data就是上面的obj

  1. 取消特定的订阅者
PubSub.unsubscribe(this.state.pubsub);

this.state.pubsub 上面的定义的

  1. 清除所有订阅
PubSub.clearAllSubscriptions();
最后更新: 12/14/2024, 4:10:14 PM