MVVM和MVP模式

MVP模式


传达我们的代码需要三层
Model层 模型层
View层 视图层,一般指页面指示,
Presenter层 控制器,视图层发生一个事件交给控制器,控制器要不获取数据,要不然就直接去操作DOM,根据视图发送的事件,相当于View和Model的中转站。
JQ就属于是MVP模式,大部分都是在操作DOM。

MVVM模式

VUE官方文档的MVVM模式的设计图

先看和MVP模式的区别:也有model层和view层,但是没有Presenter层,取而代之是v-model这层。这层是VUE底层。我们一般不需要关注V-model这层,我们只需要关注V和M层,编码的重点一般在视图层和模型层。这就有一个好处,当我们在使用VUE开发的时候,只需要去关注M层的开发就可以了,对数据进行一个修改,VM底层会自动帮实现页面,同时页面发生变化,M层也会自动跟着变
所以在VUE开发的时候,重点放在Model就可以啦~

有人可能会关注vm是怎么实现的,其实用到了ES5中的比较核心的API 叫做Object.defineProperty,同时也引用了虚拟DOM的机制。通过这两种,VUE实现了这种架构体系。有兴趣的同学可以去了解下~

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容