MVVM

1. 什么是MVVM
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。
是一种简化用户界面的事件驱动编程方式。
2. MVVM的架构
MVVM的核心是ViewModel层,负责转换Model中的数据对象来让数据变得更加容易管理和使用,其作用如下

  • 该层向上与视图层进行双向数据绑定
  • 向下与Model层通过接口请求进行数据交互

3. 为什么要使用MVVM
MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model)

  • 低耦合:视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变
  • 可复用:可以把一些视图逻辑放在一个ViewModel里面,让很多View重用这段试图逻辑
  • 独立运行:开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计
  • 可测试:页面素来是比较难与测试的,而现在测试可以针对ViewModel来写

4. MVVM模式的实现者

  • Model:模型层,在这里表示java逻辑
  • View:视图层,表示DOM(HTML操作的元素)
  • ViewModel:连接视图和数据的中间件,Vue.js就是MVVM模式中ViewModel层的实现者
    在MVVM架构中,是不允许数据和视图直接通信的,只能通过ViewModel来通信,而ViewModel就是定义了一个Observer观察者。
  1. ViewModel能够观察到数据的变化,并对视图的对应的内容进行更新。
  2. ViewModel能够监听到视图的变化,并能够通知数据发生改变。
posted @ 2021-11-28 21:10  一刹流云散  阅读(46)  评论(0编辑  收藏  举报