Vue實(shí)例有一個(gè)完整的生命周期,也就是從開始創(chuàng)建、初始化數(shù)據(jù)、編譯模板、掛載Dom、渲染→更新→渲染、卸載等一系列過程,我們稱這是Vue的生命周期。通俗說就是Vue實(shí)例從創(chuàng)建到銷毀的過程,就是生命周期。在這個(gè)過程中,實(shí)例也會(huì)調(diào)用一些生命周期鉤子,這就給我們提供了執(zhí)行自定義邏輯的機(jī)會(huì)。例如,created這個(gè)鉤子在實(shí)例被創(chuàng)建之后被調(diào)用:
var vm = new Vue({
data: {
a: 1
},
created: function () {
// `this` 指向 vm 實(shí)例
console.log('a is: ' + this.a)
}
})
// -> "a is: 1"
在Vue的整個(gè)生命周期中,它提供了一系列的事件,可以讓我們注冊(cè)js方法,可以讓我們達(dá)到控制整個(gè)過程的目的地,如果你搞過Asp.Net WebForm的話,你會(huì)發(fā)現(xiàn)整個(gè)就是WebForm的翻版嘛哈哈。值得注意的是,在這些事件響應(yīng)方法中的this直接指向的是vue的實(shí)例。先來看一張官網(wǎng)上的vue實(shí)例的生命周期,在這里我做了一備注。先來初步了解vue的生命周期。