在使用Vue架構的時候,有時候需要在Vue在頁面資料渲染完成之後調用方法,不然擷取不到準确的資料,特别是在擷取清單的高度的時候,由于資料沒有加載完,擷取不到準确的高度。之前在使用jquery的時候,有ready可以幫助我們實作,但是Vue不存在此類方法,我們需要結合watch和this.$nextTick()來實作。
nextTick:在下次 DOM 更新循環結束之後執行延遲回調。
watch:用于觀察Vue執行個體上的資料變動。對應一個對象,鍵是觀察表達式,值是對應回調。
之前我是這樣子使用nextTick的:
mounted:{
this.$nextTick(function(){
/方法
})
}
經測試發現實作不了所需要的效果,隻有結構,沒有資料,即擷取不到想要的高度
後發現需要結合watch監聽某個屬性:
watch:{
asyncArray:function()
this.$nextTick(function(){
//方法
});
}
}
經測試可用!