0
私は、Webアプリケーションに機能をスクロールする際に、より多くのデータをロードしたいと思っていました。 ユーザーがページの最後に到達したときにデータを取得するためのオンスクリーンリスナーを設定しました。ここでデータのクエリを停止したら、最後に到達しました
は、データをフェッチするための機能である:
var lastKey = '';
var myData = [];
async fetchData(){
try{
var snap = await firebase.database().ref(category).orderByKey().startAt(lastKey).limitToFirst(15).once('value');
snap.forEach(childSnap => {
myData.push(childSnap.val();
lastKey = childSnap.key;
});
}catch(err){
//handle errors
}
}
}
コードが正常に動作します。 フラグが設定され、上記の関数の呼び出しを停止し、表示するデータが残っていないことをユーザーに通知できるように、リストが終了したことを知るには
しかし、どのように私が取得した要素の長さを知っていますか? 'Object.keys(snap).length'を実行する必要がありますか? –
私はカウンタを設定し、forEachループの各反復でカウンタを1ずつ増やしました。カウンタが15未満の場合、停止するフラグを設定しましたより多くのフェッチ....ありがとう。より良い方法があれば返信してください –