Vue生命週期,Vue中在哪個生命週期階段調用異步請求最佳

Vue生命週期

beforeCreate(創建前): 在數據觀測和初始化事件還未開始,data、watcher、methods都還不存在,但是$route已存在,可以根據路由信息進行重定向等操作。

created(創建後):在實例創建之後被調用,該階段可以訪問data,使用watcher、events、methods,也就是說 數據觀測(data observer) 和event/watcher 事件配置 已完成。但是此時dom還沒有被掛載。該階段允許執行http請求操作。

beforeMount (掛載前):將HTML解析生成AST節點,再根據AST節點動態生成渲染函數。相關render函數首次被調用(劃重點)。

mounted (掛載後):在掛載完成之後被調用,執行render函數生成虛擬dom,創建真實dom替換虛擬dom,並掛載到實例。可以操作dom,比如事件監聽

beforeUpdate:vm.datadom調vm.data更新之後,虛擬dom重新渲染之前被調用。在這個鉤子可以修改vm.data,並不會觸發附加的衝渲染過程。

updated:虛擬dom重新渲染後調用,若再次修改$vm.data,會再次觸發beforeUpdate、updated,進入死循環。

beforeDestroy:實例被銷燬前調用,也就是說在這個階段還是可以調用實例的。

destroyed:實例被銷燬後調用,所有的事件監聽器已被移除,子實例被銷燬。

Vue在哪個生命週期階段調用異步請求最佳

異步請求在哪個階段都可以調用,因爲會先執行完生命週期的鉤子函數之後,纔會執行異步函數,但如果考慮用戶體驗方面的話,在created中調用異步請求最佳,用戶就越早感知頁面的已加載,畢竟越早獲取數據,在mounted實例掛載的時候就越及時。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章