知识点
消息订阅与发布是一种理念,实现它需要具体的第三方库,比如在angular中我们常用的rxjs,在这里讲的是使用pubsub-js这个库。
一种组件间通信的方式,适用于任何组件间通信。
- 使用步骤
- 安装pubsub: npm i pubsub-js
- 引入:import pubsub from 'pubsub-js'
- 订阅:A组件想接收消息,则在A中订阅消息,订阅的回调写在A组件中。
mounted(){
//订阅消息
this.pubId = pubsub.subscribe('hello',(_,data)=>{
console.log(data);
})
}
提供数据
pubsub.publish('hello',666);//发布消息
最好在beforeDestroy钩子中取消订阅。pubsub.unsubscribe(this.pubId)
备注: 比如订阅消息里面,第一个参数,消息名称我们并不使用,这个时候,我们可以使用下划线_占位