在我所见过的 Custom Event 例子中,总是会先有一个事件类型,然后会有订阅者订阅其感兴趣的不同事件,最后通过事件管理器发布事件。在这种事件模型里,必须首先存在一个事件类型。但是在有的情况下,我们想要订阅者能够订阅一个还不存在的事件类型。这个暂时还不存在的事件我们可以叫他匿名事件.
下面来看一段实现匿名事件的代码:
//事件管理器
eventManager.events = {};
//@sEvent: 事件类型,@sMethod:当事件发生时,要调用的订阅者的一个方法
eventManager.subscribe = function(sEvent, oSubscriber, sMethod) {
//如果该事件还不存在就创建一个这种类型事件的数组
if (!eventManager.events[sEvent]) {
eventManager.events[sEvent] = [];
}
eventManager.events[sEvent].push({subscriber: oSubscriber, method: sMethod});
};
eventManager.unsubscribe = function(sEvent, oSubscriber) {
if (!eventManager.events[sEvent]) {
return;
}
for (var i=eventManager.events[sEvent].length-1; i>=0; i--) {
if (eventManager.events[sEvent][i].subscriber===oSubscriber) {
eventManager.events[sEvent].splice(i,1);
}
}
};
eventManager.fire = function(sEvent) {
if (!eventManager.events[sEvent]) {
return;
}
for (var i=0; i<eventManager.events[sEvent].length; i++) {
subscription = eventManager.events[sEvent][i];
subscription.subscriber[subscription.method].apply(subscription.subscriber, arguments);
}
};
分享到:
相关推荐
android LoonAndroid超低耦合注解框架是一个注解框架,不涉及任何UI效果,目的是一个功能一个方法,以方法为最小颗粒度对功能进行拆解。把功能傻瓜化,简单化,去掉重复性的代码,隐藏复杂的实现。
《LoonAndroid超低耦合注解框架:深入解析与应用》 LoonAndroid超低耦合注解框架,作为一款历史悠久的Android开发工具,它以其独特的设计理念和强大的功能,为开发者提供了更高效、更简洁的编程方式。本文将深入...
`CWLateralSlide`是一个开源库,旨在帮助开发者以超低耦合的方式快速集成侧滑菜单功能,只需要一行代码即可实现。在本文中,我们将深入探讨`CWLateralSlide`的使用方法、特点以及如何将其集成到你的Swift项目中。 ...
方法点击事件注解 基类注解 自动Fragment注解 手动Fragment注解 2、适配器功能 无适配器 无参baseAdapter 自定义一adapter 自定义二adapter 自动绑定一adapter 自动绑定二adapter 通用适配器 3、综合...
超低噪音超低失真音频信号发生器是一种专业级别的电子设备,主要应用于音频测试、音频系统校准以及音频设备的研发领域。它能够产生极其纯净、稳定的音频信号,这对于确保音频设备性能的精确评估和优化至关重要。 一...
超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板货物起重机超低板...
Avago Technologies(安华高科技)日前宣布,已经开发出新系列超低功耗光电耦合器产品,带来可以比目前标准光电耦合器省电达90%的新一代光隔离器发展。采用独特的集成电路设计和厚绝缘层材料,Avago创新的ACPL-M61L/...
### 超低温保存技术详解 #### 一、概述 超低温保存技术是一种利用极端低温环境(如液氮,温度约为-196℃)来长期保存生物材料的方法。通过这种方式,可以使得生物材料的代谢活动几乎完全停止,同时保持其细胞活力...
4. 中断能力和硬件堆栈:提供了中断能力,并能自动保存和恢复上下文,这对于实时反应外部事件至关重要,同时硬件堆栈可以实现深度嵌套调用,而无需软件介入。 5. 看门狗定时器(WDT):这是一个硬件组件,用于监控...
"超低配光影水反_shadersminecraft_" 是一个专为 Minecraft 设计的光影模组,旨在提供高质量的光影效果,同时对计算机配置要求较低,使得那些硬件条件不那么强大的电脑也能流畅运行。 "Shaders" 在 Minecraft 中是...
Avago Technologies(安华高科技)日前宣布,已经开发出新系列超低功耗光电耦合器产品,带来可以比目前标准光电耦合器省电达90%的新一代光隔离器发展。采用独特的集成电路设计和厚绝缘层材料,Avago创新的ACPL-M61L/...
《超低功耗单片无线系统应用入门源程序——基于2.4GHz无线SOC芯片NRF24LE1》 在物联网(IoT)技术日益发展的今天,超低功耗单片无线系统扮演着至关重要的角色。它们为智能硬件、远程传感器网络以及各种无线通信设备...
以及利用睡眠模式和唤醒事件来延长电池寿命。 在电源管理方面,PDF可能还会涉及如何使用电源监控和控制电路,确保系统在不同电源状态之间平滑过渡,并在必要时自动进入低功耗模式。此外,电源门控(Power gating)...
本篇报告针对钢铁超低排放落地这一事件,从多个角度进行了详细分析。 首先,钢铁行业在中国经济中扮演着举足轻重的角色。尽管其重要性无可替代,但钢铁生产过程产生的污染物排放也对环境造成了严重影响。传统上,...
这款探头具备业界最低噪声、高带宽和专为纹波测量设计的1:1衰减,尤其突出的是其在1mV/格垂直刻度下仍能支持24V的电压偏置能力,是超低纹波测量的理想选择。 总的来说,选择示波器耦合模式需根据待测信号的特性,...
文章深入分析了基于无线网状网络(WMN:Wireless Mesh Networks)的超低功耗技术的现状及其关键技术。针对WMN中降低功耗的主要软件机制,如拓扑控制、功率控制,数据融合和基于移动节点的节能机制等进行了深入研究与分析,...
RFID技术能够利用射频信号通过空间耦合实现无接触信息传递,从而完成识别任务。根据工作方式的不同,RFID可以分为无源RFID和有源RFID两大类。无源RFID标签在接收到RFID阅读器发出的射频信号后,利用感应电流获得能量...