MVC
MVC:
Model-View-Controller的简写,即模型-视图-控制器
模型(Model)
指的是后端传递的数据
视图(View)
指的是所看到的页面
控制器(Controller)
指的是页面的业务逻辑
使用MVC的目的是将模型层与视图层的代码分离,MVC是单向通信的,也就是视图层与模型层想交互,必须通过控制器来实现
MVVM
MVVM:
Model-View-ViewModel的简写,即模型-视图-视图模型
模型(Model)
指的是后端传递的数据
视图(View)
指的是所看到的页面
视图模型(ViewModel)
处理模型层与视图层的交互,是MVVM模式的核心,它有两个方向
一是将模型转化为视图,即将后端传递的数据转化到页面上展现,实现的方式:数据绑定
二是将视图转化为模型,即将所看到的页面转化为后端数据,实现的方式:DOM事件监听
这两个方向实现的功能,称之为数据的双向绑定
,实现了 View 和 Model 的自动同步
区别
MVVM
相比MVC
最大的区别就是 MVVM
实现了View
和Model
的自动同步
也就是说当Model层
数据发生变化,不用再手动操作dom元素来改变View层
的显示,因为ViewModel
的存在,它会自动更新