什么是vue生命周期和生命周期鈎子函數?


1、vue生命周期和生命周期鈎子函數:

vue 的生命周期是: vue 實例從創建到銷毀,也就是從開始創建初始化數據編譯模板掛載Dom→渲染更新→渲染卸載等一系列過程。

在這個過程中也會運行一些叫做生命周期鈎子的函數,這給了用戶在不同階段添加自己的代碼的機會。

問題二:vue生命周期鈎子函數有哪些?

生命周期鈎子函數(11個) 類型 詳細
beforeCreate Function 實例初始化之后,數據觀測 (data observer) 和 event/watcher 事件配置之前被調用。
created Function 實例創建完成后被立即調用。在這一步,實例已完成以下的配置:數據觀測 (data observer), 屬性和方法的運算watch/event 事件回調。然而,掛載階段還沒開始,$el 屬性目前不可見。
beforeMount Function 掛載開始之前被調用:相關的 render 函數首次被調用。
mounted Function el 被新創建的 vm.$el 替換,並掛載到實例上去之后調用該鈎子。如果 root 實例掛載了一個文檔內元素,當 mounted 被調用時 vm.$el 也在文檔內。
beforeUpdate Function 數據更新時調用,發生在虛擬 DOM 打補丁之前。這里適合在更新之前訪問現有的 DOM,比如手動移除已添加的事件監聽器。該鈎子在服務器端渲染期間不被調用,因為只有初次渲染會在服務端進行。
updated Function 由於數據更改導致的虛擬 DOM 重新渲染和打補丁,在這之后調用該鈎子。
activated Function keep-alive 組件激活時調用。該鈎子在服務器端渲染期間不被調用。
deactivated Function keep-alive 組件停用時調用。該鈎子在服務器端渲染期間不被調用。
beforeDestroy Function 實例銷毀之前調用。在這一步,實例仍然完全可用。該鈎子在服務器端渲染期間不被調用。
destroyed Function Vue 實例銷毀后調用。調用后,Vue 實例指示的所有東西都會解綁定,所有的事件監聽器會被移除,所有的子實例也會被銷毀。該鈎子在服務器端渲染期間不被調用。
errorCaptured(2.5.0+ 新增) (err: Error, vm: Component, info: string) => ?boolean 當捕獲一個來自子孫組件的錯誤時被調用。此鈎子會收到三個參數:錯誤對象、發生錯誤的組件實例以及一個包含錯誤來源信息的字符串。此鈎子可以返回 false 以阻止該錯誤繼續向上傳播。

注意:

1、mountedupdated不會承諾所有的子組件也都一起被掛載。如果你希望等到整個視圖渲染完畢,可以用vm.$nextTick 替換掉mountedupdated

updated: function () { this.$nextTick(function () { // Code that will run only after the // entire view has been re-rendered }) } 

2、http請求建議在 created 生命周期內發出
vue生命周期圖示:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM