JavaScript设计模式-----发布订阅模式

原创 2018年04月15日 10:58:25

1.发布订阅模式的定义:

发布订阅模式又叫观察者模式,它定义对象间的一种一对多的依赖关系,当一个对象的状态发生变化时,所有依赖于他的对象都将得到通知。

2.发布订阅模式的通用实现:

3.一个真实的例子:

ajax异步请求获取用户的登陆信息后,渲染到各个板块,使用这个模式可以解耦合,各个模块自行订阅登陆成功后的消息事件,当登陆成功后,登陆模块只需要发布登陆成功的消息,而业务方接收到消息后,就会开始进行各自的业务处理。


4.模块间的通信:

实现发布订阅模式,可以基于全局的event对象,可以利用他在两个封装良好的模块中进行通讯,两个模块可以完全不知道对方的存在


浅析JavaScript设计模式——发布-订阅/观察者模式

观察者模式 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知 前一段时间一直在写CSS3的文章 一直都没写设计模式 今天来写写大名鼎鼎观察者模式 ...
  • q1056843325
  • q1056843325
  • 2016年11月26日 18:58
  • 6030

浅谈JavaScript设计模式——观察者模式(发布订阅模式)

观察者模式,又称为发布订阅模式,它定义了一种一对多的关系,让多个观察者对象同时监听某一个主题对象,这个主题对象的状态发生变化时就会通知所有的观察者对象,使得它们能够自动更新自己的状态。   在观察...
  • zhouziyu2011
  • zhouziyu2011
  • 2017年04月02日 17:18
  • 518

23种设计模式 之 Observer模式(发布-订阅模式)[C语言]

一、概念定义     Observer模式又称为发布-订阅模式。     Observer模式:定义了一种一对多的依赖关系,让多个观察者(Observer)同时监听某一主题对象(Subject)。当...
  • RoyalApex
  • RoyalApex
  • 2012年11月15日 15:58
  • 5109

JavaScript之发布-订阅模式

现实生活中的发布-订阅模式不论是在程序世界里还是现实生活中,发布—订阅模式的应用都非常广泛。我们先看一下现实中的例子。 小明最近看上了一套房子,到了售楼处之后才被告知,该楼盘的房子早已售罄。好在售楼...
  • Sunshineanl
  • Sunshineanl
  • 2017年08月13日 13:11
  • 290

Node中EventEmitter以及如何实现JavaScript中的订阅/发布模式

1.EventEmitterNode中很多模块都能够使用EventEmitter,有了EventEmitter才能方便的进行事件的监听。下面看一下Node.js中的EventEmitter如何使用。(...
  • fareise
  • fareise
  • 2016年08月13日 13:40
  • 1941

javascript 设计模式 发布订阅模式

javascript 设计模式 发布订阅模式
  • xutongbao
  • xutongbao
  • 2017年10月17日 17:28
  • 122

JavaScript设计模式-发布订阅模式

何为设计模式?设计模式其实可以认为是大家约定俗成的一个东西,比如在篮球场上的一些术语,在篮球场上争分夺秒的时候,不可能教练一步一步指导你去怎么做,而是告诉你一个术语,你立马就能反应出来该怎么做。这就是...
  • u010046318
  • u010046318
  • 2017年09月07日 16:03
  • 132

[设计模式] 观察者模式(发布-订阅/Publish-subscribe模式)

主要对像: 1、抽象的观察者/Watcher/Observer 以及具体实现 2、抽象的被观察者/Subject/Observable 以及具体实现 (1)目标和观察者之间的关系       ...
  • xuchuangfeng
  • xuchuangfeng
  • 2016年02月29日 18:33
  • 6040

用 JavaScript 实现发布/订阅模式

重要申明:感谢原文作者——杠子,想看原文请戳这里!我转载了原文,修改了一些原文行文不通畅之处,并更改附上了自己的代码段,望请勿怪。挂在自己的博客下面一方面是为了收藏好文,方便自己温顾而知新;另一方面也...
  • JimmyLuo17
  • JimmyLuo17
  • 2017年10月03日 10:35
  • 552

设计模式之观察者模式(订阅模式),jquery实现

$(function(){ //利用jquery带的on,off,trigger方法实现观察者模式(又名订阅者模式) var observice = $({});//生成订阅初始jquery对象 ...
  • String716
  • String716
  • 2015年10月22日 17:43
  • 723
收藏助手
不良信息举报
您举报文章:JavaScript设计模式-----发布订阅模式
举报原因:
原因补充:

(最多只允许输入30个字)