[譯] 監聽第三方 Vue 組件的生命週期鉤子

原文:vuedose.tips/listen-to-l…前端

在某些狀況下,開發者須要在父組件中瞭解一個子組件什麼時候被建立、掛載或更新。vue

你可能也在本身的組件中遇到並解決過相似問題,好比,經過在子組件的生命週期鉤子中 emit 一個事件,像這樣:bash

mounted() {
  this.$emit("mounted");
}
複製代碼

而後就能夠在父組件中監聽到:函數

<Child @mounted="doSomething"/>
複製代碼

若是隻是單純的這樣 emit 並監聽,讓我來告訴你吧:大可沒必要。this

能夠取而代之的辦法是,只須要加上前綴 @hook: 來監聽相應的生命週期鉤子函數就能夠了。spa

這個解決方法也適用於第三方組件。code

好比,若是你要在第三方組件 v-runtime-template 渲染時監聽其 updated 鉤子,像這樣就行:component

<v-runtime-template 
    @hook:updated="doSomething" 
    :template="template" />
複製代碼


--End--

查看更多前端好文
請搜索 fewelife 關注公衆號

轉載請註明出處cdn

相關文章
相關標籤/搜索