对于MVVM的理解、使用、MVC与MVVM的区别、MVVM应用场景-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
前言
持续学习总结输出中今天分享的是对于MVVM的理解、使用、MVC与MVVM的区别、MVVM应用场景
MVVM
MVVM
是Model-View-ViewModel
的缩写。MVVM 是一种设计思想。
Model
代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑。
View
代表UI组件它负责将数据模型转化成UI展现出来。
ViewModel
监听数据的改变和控制视图行为、处理用户交互简单的理解就是一个同步View
和 Model
的对象连接Model
和 View
。
在 MVVM
架构下View
和 Model
之间并没有直接的联系而是通过 ViewModel
进行交互 Model
和 ViewModel
之间的交互是双向的 因此 View
数据的变化会同步到 Model
中而 Model
数据的变化也会立即反应到 View
上。
ViewModel
通过双向数据绑定把 View
层和 Model
层连接了起来而 View
和 Model
之间的同步工作完全是自动的无需人为干涉因此开发者只需关注业务逻辑不需要手动操作DOM不需要关注数据状态的同步问题复杂的数据状态维护完全由 MVVM
来统一管理。
为什么要使用MVVM
低耦合 视图 View
可以独立于 Model
变化和修改一个 ViewModel
可以绑定到不同的 View
上当 View
变化的时候 Model
可以不变当 Model
变化的时候 View
也可以不变。
可复用 可以把一些视图逻辑放到一个 ViewModel
里面让很多 View
重用这段视图逻辑。
独立开发 开发人员可以专注于业务逻辑和数据的开发 ViewModel
设计人员可以专注于页面设计。
可测试 界面素来是比较难于测试的而现在测试可以针对 ViewModel
来写。
MVC与MVVM的区别
1、都是一种设计思想
2、MVC
后端用的多而 MVVM
是前端设计思想
3、MVC
是单向通信数据模型必须通过 Controller
层进行承上启下。MVVM
是将View
和 Model
实现自动同步当 Model
属性改变时不用再自己手动操作Dom元素提高页面渲染性能。
MVVM应用场景
Vue.js
AngularJS
微信小程序
最后分享一句话
想要不被淘汰只有一条路一辈子不断学习不断打造全新的自己。
《未来简史》
本次的分享就到这里了
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |