這幾個月用vue框架新做了一個項目,也算是邊學習邊實踐吧。學習中也看過一些別人的開源項目,起初對mounted和created有一些疑惑,查詢相關資料發現,這和vue的生命周期有關,在此也就做一個總結。
每個 Vue 實例在被創建時都要經過一系列的初始化過程——如,需要設置數據監聽、編譯模板、將實例掛載到 DOM 並在數據變化時更新 DOM 等。同時在這個過程中也會運行一些叫做生命周期鈎子的函數,這給了用戶在不同階段添加自己的代碼的機會。
下圖是實例的生命周期,在生命周期的各個階段都會有相應的鈎子函數。從圖中可以看出,created運行時,還未掛載到DOM,不能訪問到$el屬性,可用於初始化一些數據,但和DOM操作相關的不能在created中執行;monuted運行時,實例已經掛在到DOM,此時可以通過DOM API獲取到DOM節點。
有幾篇相關文章寫的不錯,也做一下推薦 https://www.jianshu.com/p/f99d3e3d2256
https://segmentfault.com/a/1190000014705819