zoukankan      html  css  js  c++  java
  • 架构MVC——JS中的理论

    什么是MVC

    MVC是一种设计模式,它将应用划分为3个部分:数据(模型)、展现层(视图)和用户交互层(控制器)。

    一个事件发生的过程可以描述如下:

    1. 用户和应用产生交互
    2. 控制器的事件处理器被触发
    3. 控制器从模型中请求数据,并将其交给视图
    4. 视图将数据呈现给用户

    模型

    模型用来存放应用的所有数据对象.比如,可能有一个User模型.

    模型不必知晓视图和控制器的细节,模型只需包含数据及直接和这些数据相关的逻辑.任何事件处理代码、视图模板,以及那些和模型无关的逻辑都应当隔离在模型之外。

    当控制器从服务器抓取数据或创建新的记录时,它会将数据填充成模型实例。也就是说,我们的数据是面向对象的,任何定义在这个数据模型上的方法或逻辑都可以直接被调用。

    视图

    视图是应用的接口,它们为用户提供视觉呈现并与用户产生交互。在这里的场景中,视图是无逻辑的HTML片段,由应用的控制器来管理,视图处理事件回调及内嵌数据。

    将逻辑混入视图中是编程的大忌。

    将视觉呈现逻辑归类为“视图助手”:和视图有关的独立的小型工具函数。

    控制器

    控制器是模型和视图的纽带。

    控制器从视图获取事件和输入,对它们进行处理,并更新相应的视图.

    当页面加载时,控制器会给视图添加事件监听,比如监听表单提交或按钮点击。然后,当用户和你的应用产生交互时,控制器中的事件触发器就开始工作了。

    读书笔记:基于MVC的JavaScript Web富应用开发

  • 相关阅读:
    android学习---Gallery画廊视图
    王立平--查看SQLite中的数据信息
    java中CyclicBarrier简单入门使用
    [ExtJS5学习笔记]第三十三节 sencha extjs 5 grid表格导出excel
    使用target打开的iframe 获取src的问题
    读《暗时间》的思考
    hdfs
    编译最新的SQLite 3.8.4.3为一个DLL
    使用Highcharts生成折线图_at last
    CentOS7 安装EFK(elasticsearch、fluent、kibana)进行Docker下日志搜集
  • 原文地址:https://www.cnblogs.com/mackxu/p/js-pattern.html
Copyright © 2011-2022 走看看