相关说明 1.事件总线 事件总线是对发布-订阅模式的一种实现,它是一种集中式事件处理机制,允许不同的组件之间进行彼此通信而又不需要相互依赖,达到一种解耦的目的。

2.发布订阅模式 发布订阅模式定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。

发布订阅模式主要有两个角色:

发布方(Publisher):也称为被观察者,当状态改变时负责通知所有订阅者。 订阅方(Subscriber):也称为观察者,订阅事件并对接收到的事件进行处理。

发布订阅模式有两种实现方式:

简单的实现方式:由Publisher维护一个订阅者列表,当状态改变时循环遍历列表通知订阅者。 委托的实现方式:由Publisher定义事件委托,Subscriber实现委托。

Mitt.js import mitt from ‘mitt’ const emitter = mitt() // 监听事件 emitter.on(‘foo’, e => console.log(‘foo’, e) ) //监听所有事件 emitter.on(‘*’, (type, e) => console.log(type, e) ) // 触发事件 emitter.emit(‘foo’, { a: ‘b’ }) // 清除事件 emitter.all.clear() // working with handler references: function onFoo() {} emitter.on(‘foo’, onFoo) // listen emitter.off(‘foo’, onFoo) // unlisten

阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。