1.1 渐进式框架的理解
为什么说Vue是一个渐进式的javascript框架,渐进式是什么意思?
-
Vue允许你将一个网页分割成可复用的组件,每个组件都包含属于自己的HTML、CSS、Js以用来渲染网页中相应的地方。
-
对于Vue的使用可大可小,它都会有相应的方式来整合到你的项目中,所以说它是一个渐进式的框架。
-
Vue是响应式的(reactive)这是Vue最独特的特性,也就是说当我们的数据变更时,Vue会帮你更新所有网页中用到它的地方。
1.2 Vue中MVVM的理解
1.2.1 模型-M
-
数据模型,负责数据存储
-
泛指后端进行的各种业务逻辑处理和数据操控,主要围绕数据库系统展开
1.2.2 视图-V
-
负责页面展示,也就是用户界面。主要由 HTML 和 CSS 来构建
1.2.3 视图模型-VM
-
负责业务逻辑处理(比如Ajax请求等),对数据进行加工后交给视图展示
-
界面数据变化时,将数据赋值给绑定的模型M
1.2.4 Vue实例化对象
-
通过vue类创建的对象叫Vue实例化对象,这个对象就是MVVM模式中的VM层
-
模型通过它可以将数据绑定到页面上,视图可以通过它将数据映射到模型上
1.3 Vue中this指向问题
1.3.1 指向原理
-
函数区域内没有this,则向外寻找最近一层的this
-
箭头函数中没有this,通常会寻找外层this
-
vue所管理的对象,this均指向vue,但使用箭头函数指向会发生变化,通常指向windows
-
非vue管理的对象(定时器、ajax回调函数),使用箭头函数this指向vue,否则指向windows
1.4 v-el的作用
-
提供一个在页面上已存在的 DOM 元素作为 Vue 实例的挂载目标
-
Vue将虚拟DOM转换为真是实DOM后,插入页面,存储一份到 $el 上
-
可以是 CSS 选择器,也可以是一个 HTML Element 实例
-
el的优先级是高于$mount的,因此以el挂载节点为准