vue生命週期

2021-10-19 18:50:31 字數 1423 閱讀 9279

vue2中生命週期

生命週期鉤子

元件狀態

最佳實踐

beforecreate

例項初始化之後,this指向建立的例項,不能訪問到data、computed、watch、methods上的方法和資料

常用於初始化非響應式變數

created

例項建立完成後,可訪問data、computed、watch、methods上的方法和資料,為掛載到dom上,不能訪問$el屬性,$ref屬性內容為空陣列

常用於簡單的ajax請求,頁面初始化

beforemount

在掛載開始之前被呼叫,beforemount之前,會找到對應的template,並編譯成render函式

-mounted

例項掛載到dom上,此時可以通過dom api獲取到dom節點,$ref屬性可以訪問

常用於獲取vnode資訊和操作,ajax請求

beforeupdate

響應式資料更新時呼叫,發生在虛擬dom打補丁之前

適合在更新之前訪問現有的dom。比如手動移除已新增的事件***

updated

虛擬dom重新渲染和打補丁之後呼叫,元件dom已經更新,可執行依賴於dom的操作

避免在這個鉤子函式中運算元據,可能陷入死迴圈

beforedestory

例項銷毀之前呼叫。這一部,例項仍然完全可用,this仍然能獲取到例項

常用於銷毀定時器、解綁全域性事件、銷毀外掛程式物件等操作

destroyed

例項銷毀後呼叫,呼叫後,vue例項只是的所有東西都很解繫結,所有事件***都很被移除,所有的子例項也會被銷毀

-vue3.0生命週期

生命週期鉤子

元件狀態

setup

頁面建立之前執行的函式,開始建立元件之前,在beforecreate和created之前執行。建立的是data和method

onbeforemount

頁面渲染之前執行,元件掛載到節點上之前執行的函式。

onmounted

頁面渲染時,元件掛載完成後執行的函式。

onbeforeupdate

頁面更新之前,元件更新之前執行的函式。

onupdated

頁面更新之後,元件更新完成之後執行的函式。

onbeforeunmount頁面銷毀之前,元件解除安裝之前執行的函式。

onunmounted頁面銷毀之後,元件解除安裝完成後執行的函式

onactivated

被包含在中的元件,會多出兩個生命週期鉤子函式。被啟用時執行。

ondeactivated

比如從 a 元件,切換到 b 元件,a 元件消失時執行。

onerrorcaptured

當捕獲乙個來自子孫元件的異常時啟用鉤子函式。

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...