Vue2.0七——生命週期

vue2.0新增的

  • 什麼是vue的生命週期vue

    指的是實例從建立到銷燬的過程,就是生命週期。
    也就是從開始建立、初始化數據、編譯模板、掛載Dom→渲染、更新→渲染、卸載等一系列過程
    ,咱們稱這是 Vue 的生命週期。
  • 生命週期的做用服務器

    生命週期中有多個鉤子函數,讓咱們在控制整個Vue實例的過程時更容易造成好的邏輯。
  • 總共有八個階段也就是八個鉤子函數函數

    建立前/後, 載入前/後,更新前/後,銷燬前/銷燬後
  • 頁面第一次加載的時候會觸發beforeCreate, created, beforeMount, mounted 這幾個鉤子,DOM 渲染在 mounted 中就完成
  • 每一個週期的具體場景
    一、beforeCreatecode

    在實例初始化以後,數據觀測(data observer) 和 event/watcher 事件配置以前被調用。

    二、createdserver

    實例已經建立完成以後被調用。在這一步,實例已完成如下的配置:
       數據觀測(data observer),屬性和方法的運算,
       watch/event 事件回調。然而,掛載階段還沒開始,$el 屬性目前不可見。

    三、beforeMount生命週期

    在掛載開始以前被調用:相關的 render 函數首次被調用。

    四、mounted事件

    el 被新建立的 vm.$el 替換,
       並掛載到實例上去以後調用該鉤子。
       若是 root 實例掛載了一個文檔內元素,
       當 mounted 被調用時 vm.$el 也在文檔內。

    五、beforeUpdate文檔

    數據更新時調用,發生在虛擬 DOM 從新渲染和打補丁以前。
       你能夠在這個鉤子中進一步地更改狀態,
       這不會觸發附加的重渲染過程。

    六、updated編譯

    因爲數據更改致使的虛擬 DOM,
       從新渲染和打補丁,在這以後會調用該鉤子。
    
       當這個鉤子被調用時,組件 DOM 已經更新,
       因此你如今能夠執行依賴於 DOM 的操做。
       然而在大多數狀況下,你應該避免在此期間更改狀態
       ,由於這可能會致使更新無限循環。
       
       該鉤子在服務器端渲染期間不被調用。

    七、beforeDestroy鉤子

    實例銷燬以前調用。在這一步,實例仍然徹底可用。

    八、destroyed

    Vue 實例銷燬後調用。
       調用後,Vue 實例指示的全部東西都會解綁定,全部的事件監聽器會被移除,
       全部的子實例也會被銷燬。 該鉤子在服務器端渲染期間不被調用。
相關文章
相關標籤/搜索