VUE的MVVM框架解析
来源:互联网 发布:刷卡消费系统源码 编辑:程序博客网 时间:2024/05/17 07:12
这篇文章主要介绍了MVVM模式中ViewModel和View、Model有什么区别?本文分别解释了它们的功能和作用,然后总结了它之间的区别,需要的朋友可以参考下:
Model:简而言之就是业务逻辑相关的数据对象。
View:就是展现出来的用户界面。
基本上,绝大多数软件所做的工作无非就是从数据存储中读出数据,展现到用户界面上,然后从用户界面接收输入,写入到数据存储里面去。所以,对于数据存储(model)和界面(view)这两层,大家基本没什么异议。但是,如何把model展现到view上,以及如何把数据从view写入到model里,不同的人有不同的意见。
MVC派的看法是,界面上的每个变化都是一个事件,我只需要针对每个事件写一堆代码,来把用户的输入转换成model里的对象就行了,这堆代码可以叫controller。
而MVVM派的看法是,我给view里面的各种控件也定义一个对应的数据对象,这样,只要修改这个数据对象,view里面显示的内容就自动跟着刷新,而在view 里做了任何操作,这个数据对象也跟着自动更新。所以:
ViewModel:就是与界面(view)对应的Model。因为,数据库结构往往是不能直接跟界面控件一一对应上的,所以,需要再定义一个数据对象专门对应view上的控件。而ViewModel的职责就是把model对象封装成可以显示和接受输入的界面数据对象。
至于viewmodel的数据随着view自动刷新,并且同步到model里去,这部分代码可以写成公用的框架,不用程序员自己操心了。
简单的说,ViewModel就是View与Model的连接器,View与Model通过ViewModel实现双向绑定。
通过下面这个例子来理解一下:
- VUE的MVVM框架解析
- 实现一个类 Vue 的 MVVM 框架
- MVVM框架Vue基础
- 前端框架--自己实现MVVM(Vue源码解析)
- 实现一个类 Vue 的 MVVM 框架_0
- [Vue框架]Vue之 MVVM 细节详解
- Vue的MVVM原理图
- 自己实现MVVM(Vue源码解析)
- vue js的MVVM模式
- 基于 Silverlight的快速开发框架RapidSL之MVVM解析
- Vue.js-----轻量高效的MVVM框架(使用slot分发内容)
- Vue.js-----轻量高效的MVVM框架,组件利用Props传递数据)
- Vue.js-----轻量高效的MVVM框架(九、组件利用Props传递数据)
- Vue.js-----轻量高效的MVVM框架(使用slot分发内容)
- MVVM:MVVM架构的简单解析
- Vue.js和MVVM的小细节
- vue.js+nodejs的MVVM笔记
- vue,angular,avalon这三种MVVM框架之间有什么优缺点?
- Android Build System[一]
- Swift的初认识
- 关于背景全屏展示
- struts2知识点总结
- Android 一键退出程序最简单的方法 finishAffinity()
- VUE的MVVM框架解析
- C++ primer 第十章 对象和类
- linux常用命令之文件处理命令
- String、StringBuffer、与StringBuilder的区别
- Python IDE
- Java:使用POI实现word的docx文件的模板功能
- android开发Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or des
- 使用SpringMVC上传多文件
- 彻底搞懂nodejs事件循环 Event Loop