VUE生命週期

2021-09-28 12:30:38 字數 1473 閱讀 9589

vue 的生命週期:vue 例項從建立到銷毀的過程,就是生命週期。也就是從開始建立、初始化資料、編譯模板、掛載dom→渲染、更新→渲染、解除安裝等一系列過程,我們稱這是 vue 的生命週期。

vue生命週期的作用

它的生命週期中有多個事件鉤子,讓我們在控制整個vue例項的過程時更容易形成好的邏輯。

vue生命週期階段

總共分為8個階段:建立前/後, 載入前/後,更新前/後,銷毀前/銷毀後

階段 介紹

beforecreate----建立前 元件例項剛被建立,元件屬性計算之前,資料物件data都為undefined,未初始化。

created----建立後 元件例項建立完成,屬性已經繫結,資料物件data已存在,但dom未生成,el未

存在be

fore

moun

t−−−

掛載前v

ue例項

的el未存在 beforemount---掛載前 vue例項的

el未存在b

efor

emou

nt−−

−掛載前

vue實

例的el和data都已初始化,掛載之前為虛擬的dom節點,data.message未替換

mounted-----掛載後 vue例項掛載完成,data.message成功渲染。

beforeupdate----更新前 當data變化時,會觸發beforeupdate方法

updated----更新後 當data變化時,會觸發updated方法

beforedestory—銷毀前 元件銷毀之前呼叫

destoryed—銷毀後 元件銷毀之後呼叫,對data的改變不會再觸發週期函式,vue例項已解除事件監聽和dom繫結,但dom結構依然存在

第一次頁面載入會觸發的鉤子

第一次頁面載入時會觸發 beforecreate, created, beforemount, mounted 這幾個鉤子

dom 渲染在 mounted 中就已經完成了

每個週期適合的場景

生命週期鉤子的一些使用方法: beforecreate : 可以在這加個loading事件,在載入例項時觸發 created : 初始化完成時的事件寫在這裡,如在這結束loading事件,非同步請求也適宜在這裡呼叫 mounted : 掛載元素,獲取到dom節點 updated : 如果對資料統一處理,在這裡寫上相應函式 beforedestroy : 可以做乙個確認停止事件的確認框 nexttick : 更新資料後立即操作dom。http請求一般在 created 裡面,如果涉及到需要頁面載入完成之後就在 mounted。

vue生命週期

beforecreate 元件例項剛剛被建立,屬性都沒有 create 例項已經建立完成,屬性已經繫結 beforemount 模板編譯之前 mounted 模板編譯之後 beforeupdate 元件更新之前 updated 元件更新完畢 beforedestroy 元件銷毀之前 destroye...

vue生命週期

vue把整個生命週期劃分為建立 掛載 更新 銷毀等階段,每個階段都會給一些 鉤子 讓我們來做一些我們想實現的動作。學習例項的生命週期,能幫助我們理解vue例項的運作機制,更好地合理利用各個鉤子來完成我們的業務 我們分別來看看這幾個階段 1.beforecreate 此階段為例項初始化之後,此時的資料...

Vue 生命週期

import vue from vue el root 沒有的話,使用render,繼續沒有,就把el的outerhtml編譯成模板 template temp data beforecreate created el是原來的el beforemount 渲染函式 render h this.tex...