EventBus的执行顺序
EventBus支持Action与Handler一对一的定义,也支持Action与Handler一对多的定义
EventBus不管是前端还是后台,都是按注册事件的顺序执行。
当事件触发时,首先查询到全部事件的处理器(plugs),按【before】、【override】、【after】形成三个队列,插入类型为空时默认是【after】。
然后先按倒序执行【before】队列的处理器,然后按正序执行【override】队列的处理器中的最后一个处理器,最后按正序执行【after】队列的处理器。
因此,目前只有【override】队列的处理器可能被override而不执行,而其他【before】、【after】队列中的处理器一定会被执行到。
前端EventBus中,可以在处理器中通过返回false来终止后续处理器的执行。
后台EventBus中,目前只能在处理器中通过抛出异常来终止后续处理器的执行。
::victory::victory::victory::victory
:victory:
说的很有道理,赞同
两个问题:
1、override or overwrite?还是两个都行?
2、“前端EventBus中,可以在处理器中通过返回false来终止后续处理器的执行”,是包括终止before/override/after三个队列的所有处理器吗?还是仅终止同一队列的处理器?
赞:victory:
EventBus的执行顺序
EventBus支持Action与Handler一对一的定义,也支持Action与Handler一对多的定义EventBus不管是前端还是后台,都是按注册事件的顺序执行。当...
点击下载文档
本文2024-09-16 22:58:53发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-51635.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章