添加/创建 Podfile
文件,并添加pod 'TKEventBusModule'
, 然后执行 pod install
以安装
Import
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)
- 创建一个事件,默认必须 name 和 data 属性
let event = TKEvent.init(.login, data: "事件1", jsonString:"")
TKEventBus.instance.publish(event)
__Note:__如果项目采用了组件化开发,并且基于 swift 语言实现,需要通过 init(_ name: , data:, jsonString:)
方式来初始化
let notification = Notification.init(name: .notification, object: "系统测试通知", userInfo: nil)
TKEventBus.instance.publish(notification)
Note: 当兼容系统通知时, jsonString
属性无效,并且 data 属性默认返回 object 或者 userInfo 数据
zhuamaodeyu, playtomandjerry@gmail.com
TKEventBusModule is available under the MIT license. See the LICENSE file for more info.