MVC , MVP , MVVM ,双向数据绑定

MVC

M : 数据模型层 Model
V: 视图层 (用户可以操作的层) View
C: controller 控制器

controller 可以让 调用 M 层的数据 在V层显示
M层改变 V层需要手动更新
M 和V之间有联系

MVP

M : 数据模型层 Model
V: 视图层 (用户可以操作的层) View
P: Presenter控制器

Presenter可以让 调用 M 层的数据 在V层显示
M 层 和V 层的操作 都要经过 Presenter
需要手动更新
M 和V之间没有联系

MVVM

M : 数据模型层 Model
V: 视图层 (用户可以操作的层) View
VM: ViewModel

双向数据绑定 M层发生变化 V层也随之变化
V 层发生变化 M层也随之变化
不需要手动更新
数据驱动视图的更改

双向数据绑定原理

(1) vue 在创建vm 的时候 会将数据配置到实例中 通过Object.defineProperty, 为数据动态添加 getter 和setter 方法
(2) 当获取数据的时候会触发getter 方法
(3) 当设置数据的时候 会触发setter 方法
(4) 当setter方法触发完成, 内部会进一步触发watcher , 当数据改变了 视图则更新操作完毕

发布了17 篇原创文章 · 获赞 4 · 访问量 251

猜你喜欢

转载自blog.csdn.net/sd2401345934/article/details/104944141
今日推荐