当前位置: 首页 > news >正文

MVVM架构模式

目录

MVVM

数据绑定方式

实现方式

Model

View

ViewModel


数据绑定方式

vue:: 数据劫持和发布-订阅模式:

         Object.defineProperty() 方法来劫持(监控)各属性的 getter 、setter ,并在数据(对象)发生变动时通知订阅者,触发相应的监听回调。

Observer——》数据监听器。对数据对象属性进行监听,变化后通知订阅者

Compiler——》指令解析器。扫描模板,指令解析,绑定事件

Watcher——》订阅者。关联Observer和Compile,能够订阅并收到属性变动的通知,通过执行Update()执行指令绑定的相应操作,更新视图。

实现方式

view和Model采用双向绑定,实现view和model数据变化会自动更新

                     二者不联系,实现解耦

Model

数据层,它仅仅关注数据本身,不关心任何操作

View

视图层,仅仅负责与用户交互(数据、指令的接收与显示)

ViewModel

与MVP不同的是,没有了View为Presente提供的接口,之前由Presenter负责的View和Model之间的数据同步交给了ViewModel中的数据绑定进行处理,当Model发生变化,ViewModel就会自动更新;ViewModel变化,Model也会更新。

http://www.lryc.cn/news/339384.html

相关文章:

  • leetcode2924--找到冠军II
  • 嵌入式|蓝桥杯STM32G431(HAL库开发)——CT117E学习笔记13:RTC实时时钟
  • 统一用安卓Studio修改项目包名
  • Spring Cloud Gateway详细介绍以及实现动态路由
  • transformer上手(6)—— 微调预训练模型
  • web前端框架设计第四课-条件判断与列表渲染
  • 计算机网络:数据链路层 - CSMA/CD协议
  • 力扣LeetCode138. 复制带随机指针的链表 两种解法(C语言实现)
  • 强大的压缩和解压缩工具 Keka for Mac
  • 论文速读:Do Generated Data Always Help Contrastive Learning?
  • 华为欧拉系统(openEuler-22.03)安装深信服EasyConnect软件(图文详解)
  • git commit --amend用法
  • 分布式系统:缓存与数据库一致性问题
  • JavaEE企业开发新技术5
  • mysql dump导出导入数据
  • 刷题记录3
  • Decorator 装饰
  • SpringMVC:搭建第一个web项目并配置视图解析器
  • 一文了解HTTPS的加密原理
  • Ubuntu系统空间整理
  • PHP Storm 2024.1使用
  • 王东岳-知鱼之乐【边读边记】1
  • 迁移docker部署的GitLab
  • 今年消费新潮流:零元购商业模式
  • Go导入私有仓库
  • GIS GeoJSON数据获取
  • 书生·浦语大模型实战营 | 第3次学习笔记
  • easyExcel - 按模板导出
  • 使用 Tranformer 进行概率时间序列预测实战
  • LLM大语言模型助力DataEase小助手,新增气泡地图,DataEase开源数据可视化分析平台v2.5.0发布