MVC和MVVM的区别
现在是市面上使用MVVM模型越来越多,相关的前端框架的选择也相应增多。
那么什么是MVVM模型,它和传统MVC模型有什么区别,接下来我们来总结探讨一下。
MVVM即Model-View-ViewModel的简写。即模型-视图-视图模型。模型(Model)指的是后端传递的数据。视图(View)指的是所看到的页面。视图模型(ViewModel)是mvvm模式的核心,它是连接view和model的桥梁。它有两个方向:一是将模型(Model)转化成视图(View),即将后端传递的数据转化成所看到的页面。实现的方式是:数据绑定。二是将视图(View)转化成模型(Model),即将所看到的页面转化成后端的数据。实现的方式是:DOM 事件监听。这两个方向都实现的,我们称之为数据的双向绑定。
MVC是Model-View- Controller的简写。即模型-视图-控制器。M和V指的意思和MVVM中的M和V意思一样。C即Controller指的是页面业务逻辑。使用MVC的目的就是将M和V的代码分离。MVC是单向通信。也就是View跟Model,必须通过Controller来承上启下。MVC和MVVM的区别并不是VM完全取代了C,只是在MVC的基础上增加了一层VM,只不过是弱化了C的概念,ViewModel存在目的在于抽离Controller中展示的业务逻辑,而不是替代Controller,其它视图操作业务等还是应该放在Controller中实现。也就是说MVVM实现的是业务逻辑组件的重用,使开发更高效,结构更清晰,增加代码的复用性。
VUE官方,也介绍了MVVM模型相关框架(如Vue 、 React、AngularJS、Knockout、Polymer等)的对比优缺点,可以参考,https://cn.vuejs.org/v2/guide/comparison.html
最新文章
- The MESI Protocol
- html_01之基础标签
- php5调用web service
- 怎么查询电脑ip地址
- oracle 11g ORA-12541: TNS: 无监听程序 (DBD ERROR: OCIServerAttach)
- Linux 性能检测 - CentOS 安装 paramon
- MVC-简单验证码制作
- FFMPEG视音频编解码零基础学习方法-b
- COJ 0580 4021征兵方案
- 自定义蜘蛛网图 NetView
- asp.net core系列 44 Web应用 布局
- layui布局器网站工具
- Linux知识扩展二:lsof命令
- gitlab图形化使用教程 (mtm推荐)
- SAP 汇率处理总结
- javascript:图片转base64
- 第75讲:模式匹配下的For循环
- 本科毕业平均年薪 30 万!经济寒冬挡不住 AI 人才的火热!
- 团队-Forward-团队一阶段互评
- 【文文殿下】洛谷P2408 不同子串个数
热门文章
- dos 下小tip
- 377 Combination Sum IV 组合之和 IV
- leetcode516 Longest Palindromic Subsequence
- 用Python利用pyFirmata控制Arduino实现Blink
- [Windows Server 2003] 手工创建安全网站
- .ai域名注册已经极具投资价值进入火爆期
- Vue指令7:v-model
- 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。
- scala学习(1)----map和flatMap的区别
- 一只小蜜蜂(hdoj 2044,动态规划递推)