Vue
Vue特点
-
Vue是一个MVVM框架
- M 模型 model 数据
- V 视图 view
- VM C -> P -> VM 视图模型 -> 处理逻辑
-
单向数据流
- 数据由父级传递给子级
-
Vue是一个JS渐进式框架
- 渐进式: 越学越难
- 想学的容易: 加强基础
-
Vue使用了虚拟DOM技术
-
Vue拥有便利性的指令
- 指令:操作DOM的一种方式
-
Vue拥有组件系统
- 组件: 组件是一个html、css、js的一个聚合体
Vue - Hello World 案例
- 当我们以script标签引入Vue.js时,我们会得到一个全局变量Vue,它是一个构造函数
- Vue这个构造函数需要实例化才能起作用
- 需要一个已有DOM作为Vue实例作用范围
- 这个已有DOM的内容为假,它是虚拟DOM。
- 虚拟DOM是从选项中分离出去的,我们可以使用this,但是在v中看起来很别扭,所有可以省略this
- data选项中的数据,在app范围内相当于全局变量
- 想要在dom结构中书写JS,需要一个插值表达式,就是{{}}
<body>
<div id="app">
{{ msg }}
</div>
</body>
<script>
const vm = new Vue({
el: '#app',
data: {
msg: 'hello vue'
}
})
</script>
查看Vue.js
这里看的是已经处理过生成的代码
- 匿名函数
- 大部分封装库都是这个函数
- 自动执行
- 解决了命名冲突
- 独立作用域
- 函数内变量使用结束之后会被GC【 垃圾回收机制 】消除
- 符合函数式编程思维
- vue使用方法有两种
- vue可以模块化使用,可以使用npm安装,因为它使用了amd的define来定义模块
- vue可以直接使用script标签引入