公共事件
事件(Event)是指对由系统、组件、应用程序等对象发起操作的封装。事件的发布者通常情况下会维持自己的状态不变,如果收到了某些交互操作所产生的信号而改变了他的状态,就会将消息发布给事件接收者,事件接收者是可以订阅用户或者相关的应用程序
公共事件(Common Event)是指通过广播的形式发出的事件,即一个事件发布者会将消息发送给多个事件接收者。
其实就是消息提示,以及下拉页面中的新闻这些(个人理解)
公共事件分类
-
系统公共事件:系统将收集到的事件信息,根据系统策略发送给订阅该事件的用户的应用程序。
-
自定义公共事件:应用程序定义的期望特定订阅者可以接受的公共事件。
公共事件开发
-
公共事件订阅开发
-
公共事件发布开发
-
公共事件取消订阅开发
公共事件处理接口
import commonEvent from '@hoos.commonEvent'
commonEvent.(后面可写)
-
publish(event: string, callback: AsyncCallback) ===发布公共事件
-
publish(event: string, options: CommonEventPublishData, callback: AsyncCallback) ===制定发布信息并发布公共事件
-
createSubscriber(subscribeInfo:CommonEventSubscribeInfo ) ===创建订阅者对象(promise)
-
createSubscriber(subscribeInfo:CommonEventSubscribeInfo ,callback: AsyncCallback ) ===创建订阅者对象(callback)
-
subscribe(subscriber: CommonEventSubsriber, callback: AsyncCallback) ===订阅公共事件
-
unsubscribe(subscriber: CommonEventSubsriber, callback?: AsyncCallback) ===取消订阅公共事件
发布公共事件
-
有序公共事件:有序公共事件是指多个订阅者有依赖关系或者对处理顺序有要求,也就是订阅者有优先级。如果订阅者的优先级高,就优先接收处理公共事件。当公共事件发布数据中的属性isOrdered的值为真时,表示公共事件为有序公共事件
-
无序公共事件:无序公共事件没有优先级的概念,接收公共事件是不分顺序的,发布的无序公共事件类似于电台广播,接收者均可以接收到公共事件
-
黏性公共事件:黏性公共事件是指即使对公共事件的订阅操作是在发布公共事件之后进行的,订阅者也能收到的公共事件。当属性isSticky