内容简介:引用文字每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的当一个 Vue 实例被创建时,它将 data 对象中的所有的属性加入到 Vue 的响应式系统中。当这些属性的值发生改变时,视图将会产生“响应”,即匹配更新为新的值。
引用文字每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的
var vm = new Vue({
// 选项
})
- 数据与方法
当一个 Vue 实例被创建时,它将 data 对象中的所有的属性加入到 Vue 的响应式系统中。当这些属性的值发生改变时,视图将会产生“响应”,即匹配更新为新的值。
注意:当这些数据改变时,视图会进行重渲染。值得注意的是只有当实例被创建时 data 中 存在的属性 才是响应式的( Vue 会在初始化实例时对属性执行 getter/setter 转化)。也就是说如果你添加一个新的属性,比如:
看完这些代码不由地对“$"这个符号感到疑惑,于是去查了相关的 API 。
实例创建之后,可以通过 vm.$data 访问原始数据对象。"$",其实是Vue创建的实例。
接着是 深入响应式原理 。
(1)检测变化的注意事项
对于已经创建的实例,Vue 不允许动态添加根级别的响应式属性。但是,可以使用 Vue.set(object, propertyName, value) 方法向嵌套对象添加响应式属性。以下是小demo。
(2)声明响应式属性
由于 Vue 不允许动态添加根级响应式属性,所以你必须在初始化实例前声明所有根级响应式属性,哪怕只是一个空值
将message 设为空值(在 data 选项中声明 message),
(3)异步更新队列
当你设置 vm.someData = 'new value',该组件不会立即重新渲染。当刷新队列时,组件会在下一个事件循环“tick”中更新。
为了在数据变化之后等待 Vue 完成更新 DOM,可以在数据变化之后立即使用 Vue.nextTick(callback)。这样回调函数将在 DOM 更新完成后被调用。
实例生命周期钩子
每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据变化时更新 DOM 等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。
例如(created):
还有其他的生命周期钩子
注意不要使用箭头函数,因为生命周期钩子的this上下文只想它的Vue实例,但是箭头函数没有this
生命周期图示
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 代理模式看着一篇就够了
- Nacos 0.3.0 发布,迄今为止看着最舒服的版本
- 当当图书大促仅剩最后3小时!Flink新书在当当、京东全部卖脱销!买不买你自己看着办咯~
- JVM指令分析实例三(方法调用、类实例)
- 通过实例入门Golang
- Iptables详解+实例
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Art of Computer Programming, Volumes 1-3 Boxed Set
Donald E. Knuth / Addison-Wesley Professional / 1998-10-15 / USD 199.99
This multivolume work is widely recognized as the definitive description of classical computer science. The first three volumes have for decades been an invaluable resource in programming theory and p......一起来看看 《The Art of Computer Programming, Volumes 1-3 Boxed Set》 这本书的介绍吧!