當element-ui的el-dialog組件中包含子組件時,用refs調用子組件時的undefined問題

今天寫VUE時我在element-ui的el-dialog組件中包含了一個子組件。

Editor爲子組件

然後我通過$refs調用該子組件裏面的方法,在控制檯上卻顯示undefined。

init方法爲dialog彈窗時纔會觸發的方法

'setHtml' of undefined"

因爲自己之前用過refs來調用子組件方法,但是沒有遇到過這種問題,很是無奈加之彷徨。

後來在度娘懷裏遨遊一番,發現和element-ui框架有關係,總之什麼關係呢,我也說不清啦。

直接看解決方法吧。

首先,你要確保你的e-dialog組件內已經加了回調函數  @open具體使用方法點擊查看element-ui官方文檔

 

@open=“init()”

然後在methods裏的init方法內改造之下面這個樣子啦:

this.$nextTick(()=>{ xxxxxx })

其實就是加上一個this.$nextTick啦,這個回調函數的意思呢,其實簡單理解就是等所有的DOM元素節點都渲染完成以後才執行其裏面的方法。具體什麼意思呢,請參考百度,這裏就不做詳細介紹了。



作者:風中凌亂的男子
鏈接:https://www.jianshu.com/p/d90984d6cb3a
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

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