MVC_Publish-Subscriber 模式中的事件处理程序

MVC_Publish-Subscriber 模式中的事件处理程序

MVC 中的事件处理:发布者-订阅者模式

程序启动时,controlRecipes将被传入addHandlerRender;

addHandlerRender会侦听事件(addEventListener),并使用controlRecipes作为回调;

  • 事件应在控制器中处理(否则视图中就会出现应用逻辑);
  • 事件应在视图中监听(否则我们就需要在控制器中使用DOM元素)

代码中实现

我们就使用加载和切换的监听的事件来举例;

js 复制代码
  addHandlerRender(handler) {
    ['hashchange', 'load'].forEach(ev => window.addEventListener(ev, handler));
  }
  • 然后我们在控制器调用它
js 复制代码
const init = function () {
  recipeView.addHandlerRender(controlRecipes);
};

init();

在 MVC(Model-View-Controller) 架构中,发布-订阅模式(Publish-Subscriber Pattern) 是一种常见的设计模式,用于处理事件和消息传递。它通过解耦事件的发布者和订阅者,使系统更灵活、可扩展。;

  • 订阅事件:向事件中心注册事件处理函数。
  • 处理事件:在事件触发时执行预定义的逻辑。
  • 取消订阅:在不需要时移除事件处理函数。
相关推荐
一叶星殇10 天前
版本即契约:.NET 6 WebAPI 多版本治理与 Swagger 文档分治实践
mvc·.net
8Qi811 天前
DDD架构演进
java·分布式·mvc·ddd
yh弓长11 天前
Spring MVC 的请求链路
java·spring·mvc
步行cgn12 天前
Spring MVC 执行流程详解:一次请求的完整旅程
java·spring·mvc
步行cgn12 天前
Spring MVC 九大核心角色详解:请求处理链路中的每一个关键组件
java·spring·mvc
步行cgn13 天前
Spring MVC 拦截器 Interceptor 详解:从执行流程到实战应用
java·spring·mvc
CoderYanger13 天前
Java EE 进阶:5. Spring IoC&DI(第三弹):Spring DI
java·开发语言·spring boot·spring·面试·java-ee·mvc
步行cgn14 天前
FormHttpMessageConverter 详解:Spring MVC 中表单数据的读写转换器
java·spring·mvc
步行cgn14 天前
Spring MVC + Thymeleaf 模板解析失败:从 500 错误到页面正常显示
java·spring·mvc
java_nnnn15 天前
spring web mvc图书管理小案例
前端·spring·mvc