vue-實例生命週期鉤子(不太明白)

    每一個 Vue 應用都是經過用 Vue 函數建立一個新的 Vue 實例開始的:服務器

var vm = new Vue({
// 選項
})


每一個 Vue 實例在被建立時都要通過一系列的初始化過程——例如,須要設置數據監聽、編譯模板、將實例掛載到 DOM 並在數據變化時更新 DOM 等。
同時在這個過程當中也會運行一些叫作生命週期鉤子的函數,這給了用戶在不一樣階段添加本身的代碼的機會。

 

     Vue提供的能夠註冊的鉤子都在上圖片的紅色框標註。 他們分別是:函數

  1. beforeCreate:在實例初始化以後,數據觀測(data observer) 和 event/watcher 事件配置以前被調用。
  2. created:實例已經建立完成以後被調用。在這一步,實例已完成如下的配置:數據觀測(data observer),屬性和方法的運算, watch/event 事件回調。然而,掛載階段還沒開始,$el 屬性目前不可見。
  3. beforeMount:在掛載開始以前被調用:相關的 render 函數首次被調用。
  4. mounted:el 被新建立的 vm.$el 替換,並掛載到實例上去以後調用該鉤子。若是 root 實例掛載了一個文檔內元素,當 mounted 被調用時 vm.$el 也在文檔內。
  5. beforeUpdate:數據更新時調用,發生在虛擬 DOM 從新渲染和打補丁以前。 你能夠在這個鉤子中進一步地更改狀態,這不會觸發附加的重渲染過程。
  6. updated:因爲數據更改致使的虛擬 DOM 從新渲染和打補丁,在這以後會調用該鉤子。當這個鉤子被調用時,組件 DOM 已經更新,因此你如今能夠執行依賴於 DOM 的操做。然而在大多數狀況下,你應該避免在此期間更改狀態,由於這可能會致使更新無限循環。該鉤子在服務器端渲染期間不被調用。
  7. beforeDestroy:實例銷燬以前調用。在這一步,實例仍然徹底可用。
  8. destroyed:Vue 實例銷燬後調用。調用後,Vue 實例指示的全部東西都會解綁定,全部的事件監聽器會被移除,全部的子實例也會被銷燬。 該鉤子在服務器端渲染期間不被調用。
相關文章
相關標籤/搜索