当前位置: 首页 > Web前端 > HTML5

MVC、MVP和MVVM

时间:2023-04-05 14:07:43 HTML5

MVCMVC模式是指可以分为三部分视图(View):用户界面。控制器(Controller):业务逻辑模型(Model):数据存储各部分之间的通信方式如下。View向ControllerController发送指令完成业务逻辑,要求Model改变状态。模型将新数据发送给视图,用户获得反馈。骨干1。用户可以向View发送指令(DOM事件),然后View直接要求Model改变状态。2、用户也可以直接向Controller发送指令(更改URL触发hashChange事件),然后由Controller发送给View。3、Controller很薄,只起到路由的作用,而View很厚,业务逻辑部署在View中。因此,Backbone干脆取消了Controller,只保留了一个Router(路由器)。MVPMVP模式将Controller重命名为Presenter,同时改变通信方向。1.各部分之间的通信是双向的。2、View和Model之间没有联系,都是通过Presenter传递的。3、View很瘦,不部署任何业务逻辑。叫做“被动视图”(PassiveView),也就是没有主动性,而Presenter很厚,所有的逻辑都部署在那里。MVVMMVVM模式将Presenter更名为ViewModel,与MVP模式基本相同。唯一的区别是它使用双向绑定(数据绑定):View中的更改会自动反映在ViewModel中,反之亦然。