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也会更新。

相关推荐

  1. 解释MVC和MVVM架构模式

    2024-04-13 02:06:03       40 阅读
  2. mvvm模式

    2024-04-13 02:06:03       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-13 02:06:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-13 02:06:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-13 02:06:03       87 阅读
  4. Python语言-面向对象

    2024-04-13 02:06:03       96 阅读

热门阅读

  1. 迷宫-蓝桥602-bfs-2019省赛

    2024-04-13 02:06:03       40 阅读
  2. spispi

    spispi

    2024-04-13 02:06:03      33 阅读
  3. 【C++】C++11介绍

    2024-04-13 02:06:03       36 阅读
  4. 软件工程师,如何搞副业赚钱

    2024-04-13 02:06:03       37 阅读
  5. 朝花夕拾 - 写在 29

    2024-04-13 02:06:03       35 阅读
  6. js的包装类型

    2024-04-13 02:06:03       34 阅读
  7. SpringFramework实战指南(八)

    2024-04-13 02:06:03       32 阅读
  8. springboot项目如何配置跨域?

    2024-04-13 02:06:03       33 阅读
  9. 关于pr的第一次听写的笔记

    2024-04-13 02:06:03       38 阅读
  10. 数据结构-树状数组

    2024-04-13 02:06:03       35 阅读
  11. 【蓝桥杯-牛客冲刺题单】

    2024-04-13 02:06:03       49 阅读