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

  • 订阅事件:向事件中心注册事件处理函数。
  • 处理事件:在事件触发时执行预定义的逻辑。
  • 取消订阅:在不需要时移除事件处理函数。
相关推荐
霸王龙的小胳膊2 天前
SpringMVC-文件上传
java·mvc
霸王龙的小胳膊3 天前
SpringMVC-登录校验
java·mvc
一个处女座的程序猿O(∩_∩)O3 天前
Vue 中的 MVVM、MVC 和 MVP 模式深度解析
前端·vue.js·mvc
Foyo Designer3 天前
【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring MVC 的崛起:从 Struts 到 Spring 的演进
struts·spring·servlet·mvc·javaweb·restful
可问 可问春风3 天前
Spring MVC 核心组件详解
java·spring·mvc
陆沙3 天前
ASP.NET MVC-构建服务层+注入服务
后端·asp.net·mvc
大霸王龙4 天前
Django的视图(View)是处理Web请求并返回响应的核心组件,其作用类似于MVC模式中的控制器。以下是关于Django视图及相关功能的详细介绍:
前端·django·mvc
恋恋风辰4 天前
QT系列教程(19) Qt MVC结构之QItemDelegate介绍
开发语言·qt·mvc
小王不会写code4 天前
Spring MVC面试题(一)
java·spring·mvc