TKEventBusModule
示例
要运行示例项目,请首先克隆仓库,然后从 Example 目录运行 pod install
。
要求
安装
TKEventBusModule 可通过 CocoaPods 获得。要安装它,只需将以下行添加到您的 Podfile 中即可
pod 'TKEventBusModule'
示例
1. 订阅者
-
导入
import TKEventBusModule
-
为NSObject子类或添加协议
TKEventSubscriber
订阅self.bus.subscribe(on: .login) { (event) in debugPrint("单独事件响应") debugPrint("测试时间:\(CACurrentMediaTime() - (self.start ?? 0))") }
-
自定义订阅者
struct Present: TKEventSubscriber { } private var present = Present() present.bus.subscribe(on: .login) { (event) in debugPrint("单独事件响应") debugPrint("测试时间:\(CACurrentMediaTime() - (self.start ?? 0))") }
暂停/恢复
-
暂停
self.bus.pauseSubscribe(on: .login)
-
恢复
self.bus.restoreSubscribe(on: .login)
2. 发送
-
创建事件需要名称和数据对象。
let event = TKEvent.init(.login, data: "事件1", jsonString:"") TKEventBus.instance.publish(event)
注意:如果使用组件化模式,则需要使用
init(_ name: , data:, jsonString:)
通知支持
let notification = Notification.init(name: .notification, object: "系统测试通知", userInfo: nil)
TKEventBus.instance.publish(notification)
注意:在这种情况下不使用protocol属性jsonString,data属性默认返回对象或userInfo
作者
zhuamaodeyu, [email protected]
许可证
TKEventBusModule可在MIT许可证下使用。有关更多信息,请参阅LICENSE文件。