从MVC到MVVM
随着Ajax技术流行,前后端分离越来越流行,前端需要处理越来越复杂的视图和数据,前端也迫切需要一种设计
模式进行分层处理。MVC设计模式进入前端,诞生了backbone.js,但是由于Controller成很薄,做了一些改良。
Angular.js带来MVVM设计模式。
MVVM的组成:
- M: Model(数据层)
- V: View(视图层)
- VM: viewModel层
核心思想:
- 不让
Model和View直接层,而是通过VM层连接起来。 - viewModel能够观察到数据的变化,并对视图对应的内容进行自动更新
- viewModel能够监听到视图的变化,并能够通知数据