0
を数える私はこのようなコードを持っている:Firebase - Foreachループが
firebase.database().ref(...).on('value'.function(snapshot) {
snapshot.forEach(function(minisnapshot) {
var counter = 0;
alert("test");
//
minisnapshot.child("books").foreach(function(mainsnapshot) {
counter +=0.5;
var data = {
price:mainsnapshot.child("price").val() * counter;
...
}
}
}
}
形式は次のようになります。問題は、書籍の各ループについて、カウンタが再び0に設定されていることです。それはvar counter = 0
を実行しているので、カウンタは常に0.5です(私はそれが0.5,1,1.5 ..となるようにします)。)。
どのようにしてbooks
ForEachにのみ適用されるこの種のカウンタを実装できますか?
スナップショットが配列であることを確認してください。 – sandrooco
@Sandrooco [Firebase DataSnapshot](https://firebase.google.com/docs/reference/js/firebase.database.DataSnapshot)です。これは配列ではありませんが、* forEach()メソッドを持っています。 –
スナップショットはデータベース内にあることを示すものではありませんか? (ユニークなキーまたは通常のオブジェクトを持つリスト) – sandrooco