前端

什么是MVC、MVVM

2019-12-03  本文已影响0人  Jabo
MVC

  一种软件设计典范,Model View Controller 模型-视图-控制器,单向通信。

举栗(通俗易懂不迷糊): 用户通过input文本框输入内容到数据库。这里:数据插入数据库【M】,用户看到的界面输入框【V】,把输入的数据传递给M 【C】。

MVVM

  Model-View-ViewModel的简写。它本质上就是MVC 的改进版。将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开【VM】抽离C中展示的业务逻辑。View绑定到ViewModel,然后执行一些命令在向它请求一个动作。而反过来,ViewModel跟Model通讯,告诉它更新来响应UI,双向绑定。

举栗(通俗易懂不迷糊): 用户通过input文本框输入内容到数据库。这里:数据插入数据库【M】,用户看到的界面输入框【V】,到这里几乎和MVC一模一样,but用户输入触发M的过程给了VM(响应),可能这里有人疑惑了这个C有啥不同,在改一下需求,把输入的内容在页面的下方展示,以前的做法是在页面获取元素再innerText之类了,但是用VM就很方便了页面直接绑定VM约定规则(进一步解耦)【用过VUE得同学应该就明白了】。

参考:什么是MVVM,MVC和MVVM的区别,MVVM框架VUE实现原理

上一篇下一篇

猜你喜欢

热点阅读