谈谈对MVVM的理解?
MVVM是Model View和View-Model的缩写
Model:代表模型层,在Model层可以定义数据修改和操作业务逻辑
View:视图层,将数据模型转化成UI显示出来
View-Mode:视图模型层,监听数据改变和控制视图行为,处理用户交互,简单理解就是同步View和Model,连接View和Model
在MVVM这个架构下,View和Model 之间是没有直接联系的,通过View-Mode进行交互,Model和View-Mode之间的交互是双向的,因此View的数据变化会同步到Model中,Model数据改变也会立即反应到View上,View-Mode通过数据双向绑定把View和Model连接起来,而View和Model之间的同步工作是自动的,不需要人为干涉,因此开发者只需要操作业务逻辑,不需要手动操作DOM,不需要关注数据状态的同步问题,复杂的数据状态维护完全是由MVVM统一管理
总的来说,前端使用MVVM主要是为了使前端开发更加方便,因为MVVM提供了数据双向绑定,数据的双向绑定是由VM提供的,这种MVVM模式解决了数据的频繁更新
谈谈对MVVM的理解?相关推荐
- 谈谈对MVVM的理解
谈谈对MVVM的理解 什么是MVVM 不管是MVC,MVP,或者MVVM,都是常见的软件架构设计模式(Architectural Pattern),它通过分离关注点来改进代码的组织方式.不同于设计模式 ...
- MVVM是什么?谈谈你对MVVM的理解?
MVVM是什么?谈谈你对MVVM的理解? 我的理解MVVM它就是一种前端开发的架构模式,作用就是为了让前端业务逻辑和HTML代码更加分离.它的核心思想就是把每个页面分成了M(Model数据模型).V( ...
- [Vue][面试]谈谈你对MVC、MVP和MVVM的理解
谈谈你对MVC.MVP和MVVM的理解 答题思路:此题涉及知识点很多,很难说清楚,说透彻,因为MVC,MVP这些我们前端程序员自己甚至都没用过.但是恰恰反映了前端这些年从无到有, 从有到优的变迁过程, ...
- Java面试之谈谈对Volatile的理解
谈谈对Volatile的理解 Volatile在日常的单线程环境是应用不到的 Volatile是Java虚拟机提供的轻量级的同步机制(三大特性) 保证可见性 不保证原子性 禁止指令重排 可能这么说,还 ...
- 谈谈对this的理解
谈谈对this的理解 什么是this 每个函数在被调用时都会创建一个执行上下文,这个上下文包含了变量环境.this.作用域链等,this就是执行上下文中的一个属性,他是在函数运行时进行绑定的,this ...
- 什么是面向对象?谈谈对面向对象的理解?
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一.什么是面向对象?谈谈对面向对象的理解? 二.3大特征: 1.封装: 2.继承: 2.多态: 总结 一.什么是面向对象?谈 ...
- 案例挑战——MVVM框架理解和实践
MVVM框架理解和实践 一.背景介绍 二. 什么是MVVM架构? 1.架构示意图 2.MVVM概念总结 3.实现VM的框架 三.通过案例来理解MVVM框架 1.没有使用MVVM架构的程序 2.使用了M ...
- 前端面试--谈谈你对MVVM的理解?如何回答
1. 首先解释:MVVM是什么?干什么用的? 1:MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式.2:其核心是提供对View 和 ViewModel 的双 ...
- iOS进阶之架构设计MVVM的理解(3)
iOS进阶之架构设计MVC(1) iOS进阶之架构设计MVP(2) 前言: 前两篇文章已经理解MVC.MVP的设计模式.特别是MVP,比较难以理解,不好把握.需要多多实践,对比.来优化P段,找到最适合 ...
最新文章
- R语言R原生及可视化包ggplot2绘制并排的箱图实战(Side-by-Side Boxplots)
- 用Spotlight on windows 实时监控Windows服务器性能
- 电感发出声音怎么解决_开关电源有“声音”可以这样解决-电源啸叫解决方案...
- Android 设备启动时,APP应用自启动
- trueOS能装linux软件,TrueOS 是什么
- Java 字符串性能对比
- python 编程环境 微信_微信开发之新浪SAE上配置WeRoBot微信机器人,python,Mac环境...
- JAVA-初步认识-第六章-类类型参数
- 判断一个树是否是平衡二叉树
- 吴昊品游戏核心算法 Round 5 —— (转载)十四步实现拥有强大AI的五子棋游戏...
- 对PID的理解及其实现公式
- java 8 list to map_Java8中list转map
- Nuxt.js mini聊天室开发 (mini-chatroom)
- 如何在Word中画横线?
- 微信小程序——车牌键盘组件实现
- 《软件工程》-用户界面设计
- Sencha touch 开发指南
- 好消息!想入深户的伙伴们赶紧看过来!
- 绿色石化高质量发展 茂名天源石化碳三碳四资源利用项目开工
- swagger初体验