私はデモアプリケーション用のデータを準備するためにFirebaseコンソールを使用しています。データ項目の1つは出席者です。出席者は配列です。 Firebaseに配列としていくつかの出席者を追加したいと思います。私はFirebaseには配列はありませんが、キーを持つオブジェクトは(時系列順に)理解しています。サンプルデータを準備するにはどうしたらいいですか?私の現在のFirebaseデータは以下のようになります。 Firebaseコンソールを使用してFirebaseのアレイを設定する
答えて
Firebaseデータベースは配列を格納しません。辞書/関連配列を格納します。あなたが入手できる最も近いものは、次の通りです。
attendees: {
0: "Bill Gates",
1: "Larry Page",
2: "James Tamplin"
}
この構造は、Firebaseコンソールでビルドできます。 Firebase SDKの1つを使用してそれを読み取ると、配列に変換されます。
firebase.database().ref('attendees').once('value', function(snapshot) {
console.log(snapshot.val());
// ["Bill Gates", "Larry Page", "James Tamplin"]
});
これは、あなたが探している結果である可能性があります。しかし、あなたが配列を格納していない場合、Firebaseがそれを好む理由についてこのブログの記事を読むことをお勧めします:https://firebase.googleblog.com/2014/04/best-practices-arrays-in-firebase.html。あなたが実際に
ほとんどの開発者が実際に配列を格納しようとしていないと私はあなたの場合は、それらの一つかもしれないと思うのセットを必要とするとき
は、配列を使用しないでください。たとえば、「Bill Gates」は2回出席者になれますか?
attendees: {
0: "Bill Gates",
1: "Larry Page",
2: "James Tamplin",
3: "Bill Gates"
}
ない場合、あなたは彼を追加する前に、彼は、アレイ内に既にありますかどうかを確認する必要があるとしています。
if (!attendees.contains("Bill Gates")) {
attendees.push("Bill Gates");
}
これは、データ構造がユースケースに対して最適以下であることを示す明確な兆候です。新しい子を追加する前に既存の子をすべてチェックすると、スケーラビリティが制限されます。
この場合、本当に必要なのはセットです。各子が1回だけ存在できるデータ構造です。 Firebaseでこのようなあなたのモデルセット:
attendees: {
"Bill Gates": true,
"Larry Page": true,
"James Tamplin": true
}
そして、あなたは、ビル・ゲイツ氏をもう一度追加しようとするたびに、今、それは-OPません:
attendees["Bill Gates"] = true;
だからではなく、独自性をコードするのでデータ構造はそれを暗に解決します。
私の他の答えを書いた後、あなたは単純にコンソールにプッシュIDを追加する方法を探していたかもしれないことに気付きました。
これは現時点では機能していません。ほとんどの場合、テストデータを入力するときに異なるタイプのキーを使用するか、別のタブに小さなJavaScriptスニペットを入れてキーを生成し、それらをコピー/ペーストします。
を実行してくださいはhereという機能をリクエストしてください。あなたが間違いなく最初に質問するからです。
ファイアベースアレイ?はい、数週間前に同じ問題がありますが、私はhereに見つかりました。最後に私はChartJSで使うことができます。現時点で
function jamToArray(snapshot) {
const returnArr = [];
snapshot.forEach(function(childSnapshot) {
const item = childSnapshot.val().time;
returnArr.push(item);
});
return returnArr;
};
firebase.database().ref('sensor').limitToLast(10).on('value', function(snapshot) {
const jam = jamToArray(snapshot);
});
- 1. Android Firebaseを使用したページ設定
- 2. Firebaseコンソールでajaxを使用してJSONコンテンツを取得する
- 3. キーを使用してFirebaseデータを設定する
- 4. firebaseコンソールを使用してデータメッセージを送信できません
- 5. Firebaseの設定
- 6. Firebaseが設定されていないXcodeコンソール
- 7. FireBaseコンソールで、私は、データベース内の以下のルールを設定していた
- 8. iOS用Firebase - コンソールがクラッシュメッセージ用に設定されていません
- 9. FirebaseをホスティングしてFirebaseを使用する
- 10. Firebase設定
- 11. Firebase - Issue Firebase Cloud Messagingの設定
- 12. FirebaseとJavaScriptを使用してスナップショットをアレイに保存する方法は?
- 13. コンソール上のFirebaseパフォーマンスダッシュボード
- 14. 設定しFirebaseのinitディレクトリ
- 15. Firestoreの設定 - Firebase
- 16. Firebaseカスタムアプリケーションの設定
- 17. FirebaseコンソールのコンソールにFirebaseアナリティクスイベントが表示されない
- 18. Firebase Notificationsコンソールを使用してAPNSペイロードにmutable_contentを追加する方法は?
- 19. Firebase Data Vue.jsを使用して配列に動的に値を設定する
- 20. Firebaseをバックエンドとして使用する
- 21. Storekit - Firebase機能を使用してサブスクリプションステータスURLを設定してください。
- 22. Firebaseコンソールからユーザーを作成するFirebase?
- 23. データバインディングを使ってfirebaseでrecyclerviewを設定する
- 24. イオンを使ってfirebase analyticsイベントを設定する方法3
- 25. Firebaseアレイからデータを取得する
- 26. Firebaseにアレイを保存する
- 27. アレイをfirebaseに更新するには?
- 28. Firebaseでアレイを格納する
- 29. Firebase UIのロゴサイズを設定する
- 30. Firebase:追加のユーザプロパティを設定する
、コンソールでIDをプッシュすることはできません。私はセットを使うか、アプリからプッシュします。ありがとう。 – vijayst
Firebaseコンソールを使用して配列に値を設定するかどうかを指定できますか? –