- MVVM
vue.js就是MVVM的一种实现,也就是我们常说的双向绑定,什么是双向绑定呢,就是比如你考试考了59分,你的爸爸就会打你.打你和59分是绑定的,一旦你不及格 你就会挨打,一旦挨打那就是你不及格。但是呢MVVM最大的特点就是 他可以不止绑定一个值,意思就是挨打还有可能是不听话,不写作业,不及格也有小概率事件不挨打,或者混合双打对不对?
那接着我们就来解释解释MVVM分别代表什么
- M:数据的模型(可以粗略理解为负责在数据库中存取数据) V:视图(显示器上的画面) VM:视图模型
- 顾名思义VM就是使得V和M双向绑定的一个桥梁,绑定器.在视图模型中,绑定器在视图和数据绑定器之间进行通信。而且VM可以多次重用。
2.MVC
- M:数据的模型(可以粗略理解为负责在数据库中存取数据) V:视图(显示器上的画面) C:控制器
MVC主要是用于分层目的的,View一般是通过controller来与Model进行联系,V和M不可以直接联系而是使用C来作为桥梁且是单向的。
总结:首先我们要明白的是MVVM的出现并不是要完全替代MVC,VM的出现只是抽离了C的业务逻辑处理,视图操作业务还是在C中实现,也就是说MVVM实现的是业务逻辑组件的重用。
- MVVM通过数据来显示视图层而不是节点操作
- MVVM主要解决了MVC中大量的dom操作使页面渲染性能降低,加载速度变慢,影响用户体验