在vue中,mvvm模式分别是模型层(m)、视图层(v)和ViewModel(vm);mvvm支持双向绑定,当m层数据进行修改时,vm层会检测到变化,并且通知v层进行相应的修改,反之修改v层会通知m层进行修改,实现了视图与模型层的相互解耦。
本文操作环境:windows10系统、Vue2.9.6版,DELL G3电脑。
MVVM分为三个部分:分别是M(Model,模型层 ),V(View,视图层),VM(ViewModel,V与M连接的桥梁,也可以看作为控制器)
1、 M:模型层,主要负责业务数据相关;
2、 V:视图层,顾名思义,负视图相关,细分下来就是html css层;
3、 VM:V与M沟通的桥梁,负责监听M或者V的修改,是实现MVVM双向绑定的要点;
MVVM支持双向绑定,意思就是当M层数据进行修改时,VM层会监测到变化,并且通知V层进行相应的修改,反之修改V层则会通知M层数据进行修改,以此也实现了视图与模型层的相互解耦;
要实现一个mvvm的库,我们首先要理解清楚其实现的整体思路。先看看下图的流程:
1.实现compile,进行模板的编译,包括编译元素(指令)、编译文本等,达到初始化视图的目的,并且还需要绑定好更新函数;
2.实现Observe,监听所有的数据,并对变化数据发布通知;
3.实现watcher,作为一个中枢,接收到observe发来的通知,并执行compile中相应的更新方法。
4.结合上述方法,向外暴露mvvm方法
【相关推荐:《vue.js教程》】
以上是vue中mvvm模式如何理解的详细内容。更多信息请关注PHP中文网其他相关文章!