一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第3天,点击查看活动详情。
我要一步一步往上爬~大家好,今天我们来一起学习一下MVVM架构模型概念。
一、MVVM
官网显示Vue的开发是参考MVVM模型的,所以先认识一下MVVM模型这个概念对我们后续的开发很有必要!
MVVM 是Model View ViewModel 的缩写,由以下三部分组成:
- Model:模型,对应的是Data里的数据
- View:视图
- ViewModel:视图模型,对应的是Vue实例对象,在代码中我们经常看到的
vm变量名就是它的缩写。
View和Model是没有直接关联的,中间的ViewModel起到了连接Model和View的作用,是个桥梁的角色,Data Binding数据绑定把数据放在了视图中我们指定的位置上,以后数据无论怎么变化,页面上的数据就会自动更新,无需我们手动完成DOM的操作;DOM Listner-Dom监听器则是监听页面上的DOM改变,然后映射回数据当中。
可以借助这张图片来理解一下:
二、举例分析
<body>
<div id="app">
<h1>打个招呼:{{name}}</h1>
<h1>1:{{$listeners}}</h1>
<h1>2:{{$el}}</h1>
<h1>3:{{_c}}</h1>
</div>
</body>
<script type="text/javascript">
var vm = new Vue({
el:'#app',
data:{
name:'Hello~',
x:1
}
})
console.log(vm)
</script>
右键检查可以看到通过
console.log(vm)命令展示出的vue实例,点击最左边的小三角形可以看到vm实例中的诸多属性,其中就包括了我们在程序中定义的name属性,即使是没有展示在页面上的x属性也会在vm实例中被列举出来。
红色框框代表data中定义的所有属性,绿色框框代表我选择展示在网页上的vm实例原型上的属性,这些都是可以直接在Vue模板中使用的。
其实把这些属性展示出来没有实际的意义,具体属性的使用方法还要通过后续的学习得知,现在是了解其原理的阶段~
又学完了一个知识点,欢迎在评论区和我交流~