《vue概念篇》vue设计思路
vue工作原理
参考链接:https://www.cnblogs.com/lishanlei/p/8423407.html
参考链接:https://www.cnblogs.com/wzfwaf/p/10553160.html
MV模式
之前,我们都是通过原生js操作dom元素,比如:获取内容、增加点击事件等,如果任务量非常大,那么我们的js代码会随着业务的增加变得臃肿,那么多逻辑,用原生js去写,是很恐怖的行为。
为了解决这种问题,有些人把js的代码做了分类,分为三个部分(把js拆成三个js),分别是Model(数据)、View(视图)、逻辑控制,其中,View部分只负责更改前端;Model部分只负责数据;逻辑控制部分负责联系上两个部分。这就是MVC、MVP、MVVM等模式的思路,只不过是逻辑部分有所不同。
无论是MVC,还是MV什么,其目的就是为了分类,将数据部分和视图部分拆解开,让代码更加清楚,更加易于维护。
MVVM
MVVM(Model-View-ViewModel),模型-视图-视图模型,是MVC的改进,由上述可知,Model是负责数据,View是负责更改前端,而ViewModel就是逻辑控制部分。
ViewModel,它有两个功能,
(1)将Model转化为View,实现方式就是数据绑定。
(2)将View转化为Model,实现方式就是监听DOM。
上述两个功能统称为:双向绑定
双向绑定
双向绑定,简单来说,View和Model绑定,更改一个,另一个也会随之更改。具体实现逻辑可以看看参考博客。