私はFirebaseデータベースからデータの配列を生成し、その結果をHTMLページに移そうとしています。Firebaseデータベースからデータの配列を取得し、結果をHTMLページに取り込む方法は?
これは私のデータベースのレイアウトです:
MYAPP
|_______chat
|
|_______users
|_____2eD8O9j2w
| |____email
| |____first_name
| |____last_name
|
|_____7d73HR6d
|_____9ud973D6
|_____Kndu38d4
私はusers
内のすべての「電子メール」および「FIRST_NAME」フィールドの配列を取得することができるようにしたい、その後、自動的にリストを作成し、移入このデータからHTML形式に変換します。 (行ごとに2つのdiv要素が存在することになるの連絡先リストを作成するの種類など、:<td><div>first_name</div><div>email</div></td>
)
これは私の現在の試行のデータをHTMLページを移入である:
HTML
(それは、代わりにHTMLコード内の空のものを作成する、作成とJavascriptの内部で自動的にこれらの行を移入することは可能ですか?)
<div>
<section>
<table>
<tr>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<tr>
<td></td>
</tr>
</table>
</section>
</div>
Javascri PT
function createContactList(){
var elements = document.getElementsByTagName('td');
var contacts = [];
// Get a database reference to the users section
var ref = firebase.database().ref().child('/users');
ref.on("value", function(element) {
return function (snapshot) {
console.log(snapshot.val());
// Loop through each HTML tag
for(var i = 0; i < elements.length; i++){
element.innerHTML = snapshot.val();
var tester = snapshot.val();
console.log(tester.email); // This returns "undefined"
console.log(snapshot.val()); // This returns a list of User IDs
console.log(snapshot.val().email); // This returns "undefined"
console.log(snapshot.val(email)); // This shows the error: ``firebase Uncaught ReferenceError: email is not defined``
var createarraytest = snapshot.email;
contacts.push({email: createarraytest});
}
}(elements[i]),
function (errorObject) { // Deal with errors
console.log("The read failed: " + errorObject.code);
});
}
console.log(contacts);
}
私はこの関数を実行すると、以下のリストには、HTMLページに表示されます:
[OBJECT OBJECT]
[OBJECT OBJECT]
[OBJECT OBJECT]
[OBJECT OBJECT]
[OBJECT OBJECT]
console.log(snapshot.val());
は、ランダム化されたユーザーIDのリストを示します。 IDごとにemail
とfirst_name
データにアクセスしようとする試みで、私は次のことを試してみた:
var tester = snapshot.val();
console.log(tester.email); // This returns "undefined"
console.log(snapshot.val().email); // This returns "undefined"
console.log(snapshot.val(email)); // This shows the error: ``firebase Uncaught ReferenceError: email is not defined``
私はSQLデータベースとJavaScriptで配列を使用してために使用されるんだけど、私がアクセスする方法がわかりませんFirebaseがこのnoSQLデータベースで作成したランダムなユーザID文字列に含まれるデータ。
私はドキュメントと回答を以下に試してみました:Proper way to store values array-like in Firebaseしかし、私は今までそれを動作させることができませんでした。
これを動作させる助けがあれば、本当にありがとうございます、事前に感謝してください!
こんにちは@フランク・ヴァン・パフレンはあなたの答えをどうもありがとう!私はあなたのアドバイスを受けて、あなたが言及したチュートリアルを完了しました。本当に役に立ちました。 Web開発とFirebaseを同時に学習しようとしているのは間違いありません。両方とも本当に興味深いですし、将来もっと簡潔な質問をすることができれば幸いです。あなたの助けをもう一度ありがとう! :) – Emily
Web開発+ Firebaseは強力な組み合わせなので、悪化する可能性があります。 ;-)あなたは別の質問があるときにハッキングとポストバックを続けてください。 –