Javascript 设计模式(一) 发布-订阅模式

1概述

  发布-订阅模式,一种对象间一对多的依赖关系,当一个对象的状态发送改变时,所有依赖于它的对象都将得到状态改变的通知。
  即订阅者将自己想要订阅的事件,在调度中心注册,当发布者发布该事件时,调度中心统一处理,触发该事件发送到订阅。类似于订阅自己想要的公众号,当公众号号主发送文章,由微信公众号平台统一调度转发到各个用户。
在这里插入图片描述

2 实现发布-订阅模式

  首先定义调度中心及其缓存列表
  on()订阅方法,用于在缓存列表注册订阅者的方法func,event作为区别订阅者想要订阅的事件,避免后期调度混乱。
  emit()激活时,根据event事件标签,提取订阅者执行的函数,并将后续参数传入订阅者函数中
  remove()取消订阅时

 let channel= {
      //定义调度中心
            list:{
   },   //定义缓存列表
            //订阅方法
            on(event,func){
   
            //列表不存在,先创建再添加订阅者的函数
                (this.list[event]||(this.list[event]=[])).push(func);
            },
            
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值