MVC、MVVM的区别和联系

网上的资料很多,面试也经常问到,为了进一步加深理解,还是以博客的方式记录下来。

**MVC**
MVC是Model-View-Controller的简写,
M是后端传递的json数据,V是指用户看到的HTML页面,C即处理页面的js逻辑,
MVC是单向通信,也就是View和Model必须通过Controller来承上启下。

MVC流程
接受用户指令时,MVC 可以分成两种方式。一种是通过 View 接受指令,传递给 Controller。Controller对模型进行修改,最后渲染在页面上。
在这里插入图片描述
另一种是直接通过controller接受指令。
在这里插入图片描述

**MVVM**
MVVM是Model-View-ViewModel的简写,ViewModel存在的目的在于抽离Controller中展示的业务逻辑,
它是View和Model的桥梁,并且它采用的是双向绑定。
a.属性绑定,即把后台传递的数据转化为所看到的页面;
b.事件绑定,即通过页面的事件监听来改变后台的数据;
双向绑定仅仅是之前的属性绑定与事件绑定的结合,指令是[(ngModel)]。

MVVM流程
在这里插入图片描述
参考资料:
http://www.ruanyifeng.com/blog/2015/02/mvcmvp_mvvm.html

猜你喜欢

转载自blog.csdn.net/qq_37012533/article/details/84951655
今日推荐