程序開發人員,不拘泥於語言與技術,目前主要從事PHP和前端開發,使用Laravel和VueJs,App端使用Apicloud混合式開發。合適和夠用是最完美的追求。我的網站:http://www.linganmin.cn前端
最近剛寫了一個手機在線播放的H5電影站:https://ifilm.linganmin.cnvue
Vue實例有一個完整的生命週期,也就是從開始建立、初始化數據、編譯模板、掛載Dom、渲染→更新→渲染、卸載等一系列過程,咱們稱這是Vue的生命週期。通俗說就是Vue實例從建立到銷燬的過程,就是生命週期。
在Vue的整個生命週期中,它提供了一系列的事件,可讓咱們在事件觸發時註冊js方法,可讓咱們用本身註冊的js方法控制整個大局,在這些事件響應方法中的this直接指向的是vue的實例。服務器
特別值得注意的是created鉤子函數和mounted鉤子函數的區別
beforeCreate函數
在實例初始化以後,數據觀測(data observer) 和 event/watcher 事件配置以前被調用。
created網站
實例已經建立完成以後被調用。在這一步,實例已完成如下的配置:數據觀測(data observer),屬性和方法的運算, watch/event 事件回調。然而,掛載階段還沒開始,$el 屬性目前不可見。
beforeMountthis
在掛載開始以前被調用:相關的 render 函數首次被調用。
mountedspa
el 被新建立的 vm.$el 替換,並掛載到實例上去以後調用該鉤子。
beforeUpdate3d
數據更新時調用,發生在虛擬 DOM 從新渲染和打補丁以前。 你能夠在這個鉤子中進一步地更改狀態,這不會觸發附加的重渲染過程。
updatedserver
因爲數據更改致使的虛擬 DOM 從新渲染和打補丁,在這以後會調用該鉤子。
當這個鉤子被調用時,組件 DOM 已經更新,因此你如今能夠執行依賴於 DOM 的操做。然而在大多數狀況下,你應該避免在此期間更改狀態,由於這可能會致使更新無限循環。blog
該鉤子在服務器端渲染期間不被調用。
beforeDestroy
實例銷燬以前調用。在這一步,實例仍然徹底可用。
destroyed
Vue 實例銷燬後調用。調用後,Vue 實例指示的全部東西都會解綁定,全部的事件監聽器會被移除,全部的子實例也會被銷燬。 該鉤子在服務器端渲染期間不被調用。