一、概念
MVVM可以拆分成:View --- ViewModel --- Model三部分 ,看下面的视图:
eg:你在Model层中修改了name的值为:“李四”,那么View视图层显示的“张三”也会自动变成了“李四”,而这个过程就是有ViewModel来操作的,不需要你手动地去写代码去实现(你不用再手动操作DOM了)。
二、Vue.js的优点
1.Vue.js更轻量更快
2.更容易上手,易学
三、Vue的核心
通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件;
Vue的数据驱动:数据改变驱动了视图的自动更新,传统的做法你得手动改变DOM来改变视图,vuejs只需要改变数据,就会自动改变视图,一个字:爽。再也不用你去操心DOM的更新了,这就是MVVM思想的实现。
视图组件化:把整一个网页的拆分成一个个区块,每个区块我们可以看作成一个组件。网页由多个组件拼接或者嵌套组成。看下图:
四、适用场景
1.用jquery频繁操作你的DOM来更新页面;
2.有多个部分是相同的,并可以封装成一个组件;
3.Vue.js的核心实现中使用了ES5的Object.defineProperty特性,IE8及以下版本浏览器是不兼容的;所以项目需要兼容这些较低版本的浏览器的话,那么,Vue.js就不适用了。