曹可爱之最可爱-Vue.js入门 (二)Vue实例

一.数据与方法

每个Vue应用都是通过Vue函数创建一个新的Vue实例开始的:

var vm = new Vue({
    //选项
})

当一个Vue实例被创建时,它向Vue的响应式系统中加入其data对象中能找到的所有的属性。当这些属性的值发生改变时,视图将会产生”响应”,即匹配更新为新的值。

// 我们的数据对象
var data = { a:1}

// 该对象被加入到一个Vue实例中
var vm = new Vue({
    data:data
})

// 他们引用相同的对象
vm.a === data.a // => true

//设置属性也会影响到原始数据
vm.a = 2
data.a // => 2

// ... 反之亦然
data.a = 3
vm.a // => 3

当这些数据改变时,视图会进行重渲染。只有当实例被创建时data中存在的属性是响应式的,

除了data属性,Vue实例暴露了一些有用的实例属性和方法。他们都有前缀 $ ,以便与用户定义的属性区分开来。例如:

var data = {a:1}
var vm = new Vue({
    el: '#example',
    data:data
})

vm.$data === data // => true
vm.$el === document.getElementById('example') // => true

//$watch是一个实例方法
vm.$watch('a', function(newValue, oldValue) {
    //这个回调将在'vm.a'改变后调用
})

二 .实例生命周期

每个Vue实例在被创建之前都要经过一系列初始化过程。例如需要设置数据监听,编译模版,挂载实例到DOM,在数据变化时更新DOM等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,给予用户机会在一些特定的场景下添加他们自己的代码。

例如:created钩子可以用来在一个实例被创建之后执行代码:

new Vue({
    data: {
     a:1
    },
    created:function(){
    // 'this'指向 vm 实例
    console.log('a is: ' + this.a)
    }
})
// => "a is: 1"

钩子的this指向调用它的Vue实例

生命周期图示

好啦这块就到这儿了。数据和方法没什么说的,这种语法主要还是实现了响应式。生命周期钩子呢,我的理解就是在将这些函数挂载到代码编译执行的不同阶段所运行的函数。至于对不对呢,等日后见得多了坐等打脸。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值