SuperAPI AI 工具集

mediator-pattern

测试与质量

查看项目

更新于 10-15 23:33

技能介绍

用途:将组件之间的通信集中到中介者,组件只认识中介者而不互相引用,从而降低耦合,使组件可独立复用与测试。

主要能力:提供组件经中介者通信的接口(如 IMediator.notify);支持 CQRS 命令/查询总线,将命令分派给处理器;支持事件总线式发布/订阅。

使用方式:定义中介者接口,组件持有中介者引用并在事件发生时调用 notify;中介者根据发送者与事件协调响应。命令总线中先注册命令与处理器,再通过 send 分派。

适用场景:多个 UI 组件、服务或处理器需要通信;直接耦合导致测试或复用困难;编排多步工作流;多字段相互影响的复杂表单校验。

限制与注意:简单的父子通信用 props/回调即可,无需中介者;真正属于一起的两个组件不必引入;避免“上帝中介者”,应按限界上下文拆分为多个领域中介者;过度集中会成为瓶颈;间接通信会增加调试难度,可在中介者中加日志。React Context 可视为简单中介者,Redux store + dispatch 类似命令总线。