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) 是一种常见的设计模式,用于处理事件和消息传递。它通过解耦事件的发布者和订阅者,使系统更灵活、可扩展。;

  • 订阅事件:向事件中心注册事件处理函数。
  • 处理事件:在事件触发时执行预定义的逻辑。
  • 取消订阅:在不需要时移除事件处理函数。
相关推荐
醇氧4 天前
MVC、MVP、MVVM 架构详解、分析与对比
架构·mvc
IKUN家族5 天前
Spring MVC(五)
java·spring·mvc
风起洛阳@不良使6 天前
Spring MVC的前端控制器配置(servlet+DispatcherServlet)
前端·spring·mvc
萧瑟余晖6 天前
Java深入解析篇十六之Spring MVC与WebFlux
java·spring·mvc
IKUN家族7 天前
Spring MVC(四)
java·spring·mvc
额恩6613 天前
神经网络入门:从基础到CNN全解析
mvc
周倦岚13 天前
ArkTS中的MVC、MVP、MVVM
华为·mvc·harmonyos
IKUN家族14 天前
Spring MVC(一)
java·spring·mvc
米码收割机16 天前
【SSM】Spring MVC_MyBatis SSM商城系统(源码+论文)【独一无二】
spring·mvc·mybatis
中微极客19 天前
神经形态计算:从忆阻器到SNN训练工程实践
人工智能·mvc