Vueは、ページデータのレンダリングが完了した後に呼び出されます.
1110 ワード
Vueフレームワークを使用する場合、Vueがページデータのレンダリングが完了した後にメソッドを呼び出す必要がある場合があります.そうしないと、正確なデータが取得されません.特に、リストの高さを取得する場合、データがロードされていないため、正確な高さが取得されません.以前jqueryを使用していたとき、readyは私たちを助けることができましたが、Vueにはこのような方法はありません.watchとthis.$を組み合わせる必要があります.nextTick()で実現します.
nextTick:次回のDOM更新サイクルが終了した後に遅延コールバックを実行します.
watch:Vueインスタンスのデータ変動を観察するために使用します.オブジェクトに対応し、キーは式を観察し、値はコールバックに対応します.
以前はnexttickを使っていました
mounted:{
this.$nextTick(function(){
////////方法
})
}
テストの結果、必要な効果は実現できないことが分かった.構造だけで、データがなければ、所望の高さが得られない.
その後、watchと組み合わせてプロパティを監視する必要があることがわかりました.
watch:{
asyncArray:function()
テスト済み!
nextTick:次回のDOM更新サイクルが終了した後に遅延コールバックを実行します.
watch:Vueインスタンスのデータ変動を観察するために使用します.オブジェクトに対応し、キーは式を観察し、値はコールバックに対応します.
以前はnexttickを使っていました
mounted:{
this.$nextTick(function(){
////////方法
})
}
テストの結果、必要な効果は実現できないことが分かった.構造だけで、データがなければ、所望の高さが得られない.
その後、watchと組み合わせてプロパティを監視する必要があることがわかりました.
watch:{
asyncArray:function()
this.$nextTick(function(){
//////
});
}
}
テスト済み!