美文网首页
手写一个iOS事件总线EventBus

手写一个iOS事件总线EventBus

作者: babyloveblues | 来源:发表于2021-07-27 15:01 被阅读0次

1、什么是事件总线

事件总线是一个基于NSNotification的发布/订阅框架。

2、实现目标


(1)订阅某个Notification事件,监控通知的发送;
(2)当监听对象从内存中销毁(dealloc)的时候,自动移除监听

3、使用

现已支持cocoapods

pod 'ViaBus'

(1)发送广播到总线

[VIABUS publishNotification:@"didlogin" broadcastContent:userInfo];

(2)订阅广播

[VIABUS subscribeEventWithEventname:@"didlogin" andTaget:self handler:^(NSString * eventName, id object) {
  NSLog(@"收到通知");
}];

(3)手动取消广播

[VIABUS unsubscribeEventWithEventName:@"didlogin" target:self];

(4)自动释放

当监听人实例被释放的时候,会自动移除订阅。新的广播发送的时候,不会再被监听。

4、源代码&Demo

https://github.com/BBC6BAE9/ViaBus

相关文章

  • 手写事件总线eventBus

    在vue中,我们有时会用eventBus进行简易组件通信,那么这个eventBus究竟是如何实现的呢?eventB...

  • 手写一个iOS事件总线EventBus

    1、什么是事件总线 事件总线是一个基于NSNotification的发布/订阅框架。 2、实现目标 (1)订阅某个...

  • eventBus源码解析

    EventBus定义:是一个发布 / 订阅的事件总线。 发布者,订阅者,事件,总线。 EventBus,可以说,就...

  • EventBus源码分析

    EventBus EventBus是一个为Android和Java平台设计的发布/订阅事件总线 EventBus有...

  • [Android组件解读] EventBus3.0解析

    记得前段时间讲解过otto事件总线的概念,但是大家习惯用的事件总线应该还是EventBus。 EventBus介绍...

  • Vue的事件总线

    事件总线是什么? EventBus 又称为事件总线。在Vue中可以使用 EventBus 来作为沟通桥梁的概念,就...

  • EventBus和RxBus的使用

    EventBus介绍: Rx:函数响应式编程,EventBus:事件总线 。EventBus 功能类似handle...

  • vue 事件总线EventBus的概念、使用

    两个组件之间毫无关系,用到 vue 中的事件总线 EventBus的概念来传递数据 EventBus又称事件总线,...

  • 自己动手写事件总线(EventBus)

    事件总线核心逻辑的实现。 EventBus的作用 Android中存在各种通信场景,如Activity之间的跳转,...

  • 自己动手写事件总线(EventBus)

    本文由云+社区发表 事件总线核心逻辑的实现。 EventBus的作用 Android中存在各种通信场景,如Acti...

网友评论

      本文标题:手写一个iOS事件总线EventBus

      本文链接:https://www.haomeiwen.com/subject/fulomltx.html