原文: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" />
複製代碼
查看更多前端好文
請搜索 fewelife 關注公衆號
轉載請註明出處cdn