什么是MVC
MVC是一种设计模式,它将应用划分为3个部分:数据(模型)、展现层(视图)和用户交互层(控制器)。
一个事件发生的过程可以描述如下:
- 用户和应用产生交互
- 控制器的事件处理器被触发
- 控制器从模型中请求数据,并将其交给视图
- 视图将数据呈现给用户
模型
模型用来存放应用的所有数据对象.比如,可能有一个User模型.
模型不必知晓视图和控制器的细节,模型只需包含数据及直接和这些数据相关的逻辑.任何事件处理代码、视图模板,以及那些和模型无关的逻辑都应当隔离在模型之外。
当控制器从服务器抓取数据或创建新的记录时,它会将数据填充成模型实例。也就是说,我们的数据是面向对象的,任何定义在这个数据模型上的方法或逻辑都可以直接被调用。
视图
视图是应用的接口,它们为用户提供视觉呈现并与用户产生交互。在这里的场景中,视图是无逻辑的HTML片段,由应用的控制器来管理,视图处理事件回调及内嵌数据。
将逻辑混入视图中是编程的大忌。
将视觉呈现逻辑归类为“视图助手”:和视图有关的独立的小型工具函数。
控制器
控制器是模型和视图的纽带。
控制器从视图获取事件和输入,对它们进行处理,并更新相应的视图.
当页面加载时,控制器会给视图添加事件监听,比如监听表单提交或按钮点击。然后,当用户和你的应用产生交互时,控制器中的事件触发器就开始工作了。
读书笔记:基于MVC的JavaScript Web富应用开发