- M :Model(数据模型)
- V :View(视图模型)
- VM:ViewModel(一个同步View和Model的对象)
用jquery库开发存在缺点:
1. 业务与视图代码糅合一起,会相互影响
2. 大量操作DOM,操作冗余,难以维护
3. 大量的DOM操作使得页面渲染性能降低,加载速度变慢,影响用户体验
4. 当Model频繁变化时,开发者需要手动更新view,用户操作改变model时,开发者同样需要手动将改变的数据同步到model,数据多的话难以维护
然而MVVM解决了以上问题,不对DOM进行操作,它是将业务与视图进行了分离,易于维护
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<!-- 1.引入vue的文件 -->
<script src="/vue2.js"></script>
</head>
<body>
<div id="study">
<!-- 5.使用插值表达式{{}}展示数据 ,作用是专门用来渲染文本-->
<p>{{msg}}</p>
</div>
<script>
//2.创建一个vue实例,这个实例能够监管html代码
var vm = new Vue({
//3.通过el属性指定vue实例的监管范围,它的值是一个id
el: '#study',
//4.通过data属性保存数据,data后面跟一个对象
data: {
msg: 'hello world'
}
})
</script>
</body>
</html>
上面示例中