2016-10-03 22 views
0
<button id="all" onclick="button()"> View All </button> 

<script> 
    function button(){ 
    var userRef = new Firebase("https://addview-c21e6.firebaseio.com/users/"); 
    userRef.on("value", function(snapshot) { 
     // The callback function will get called twice, once for "fred" and once for "barney" 
     snapshot.forEach(function(childSnapshot) { 
     // key will be "fred" the first time and "barney" the second time 
     var key = childSnapshot.key(); 
     // childData will be the actual contents of the child 
     var childData = console.log(childSnapshot.val()); 
     var para = document.createElement("p"); 
     var node = document.createTextNode(childSnapshot.val()); 
     para.appendChild(node); 
     var element = document.getElementById("viewAll"); 
     element.appendChild(para); 
     }); 
    }); 
    } 
</script> 
<div id="viewAll"> </div> 

上記のコードは、私の質問にあります。私のツリーは以下の通りです:私はユーザーとしてルートを持っています。その下にユーザー名(つまりジョン)があり、その下に2人の子供..名前と年齢があります。ですから、基本的にはviewAll divにデータベース内のすべてのデータをリストさせたいと思います。ジョン15、ジェイク16などのようにリストアップする必要があります。現時点では、単にオブジェクトObjectを出力しています。ここからどこに行くのですか? P.S.私は単純化のためにすべてを示していないより多くのコードがあります。 私は助けに感謝します!Firebaseデータベースからのデータ表示

+0

データ構造を記述する代わりに、実際のJSON(テキストとして、スクリーンショットなし)をFirebaseコンソールからエクスポートしてください。 –

+0

{ "ユーザ":{ "アンディ":{ "年齢": "12"、 "名前": "アンディ" }、 "ADA":{ "年齢"、 "11"、 "名前": "ADA" }、 "アダム":{ "年齢": "12"、 "名前": "アダム" }、 "デイブ":{ "年齢": "20" 、 "名前": "デイブ" }、 "SAM":{ "年齢": "15"、 "名前": "SAM" }、 "タラス": { "年齢"、 "12"、 "名前": "タラス" } } } –

答えて

0

あなたchildSnapshot.val()は、ユーザーのそれぞれは、このようなものに見えると仮定すると、ユーザー名、名前と年齢とともにJSONオブジェクトでなければなりません:あなたのforEach()ループでは

'fred': { username: 'fred', name: 'Fred Flintstone', age: 45 }, 
'barney': { username: 'barney', name: 'Barney Rubble', age: 44 } 

を、あなたはそれぞれにアクセスすることができるはずです

var userInfo = childSnapshot.val(); 
var username = userInfo.username; 
var name = userInfo.name; 
var age = userInfo.age; 
+0

{ "ユーザ":{ "アンディ":{ "年齢": "12"、 「名前": "アンディ" }、 "ADA":{ "年齢": "11"、 "名前": "ADA" }、 "アダム":{ "年齢"、 "12"、 "名前": "adam" }、 "dave":{ "年齢": "20"、 "名前": "dave" } –

+0

ここでは、例えば、私のデータベース構造をどのように見えるかを示します。まず、ユーザーの子、次に実際の名前、名前、年齢: –

+0

たとえば、ユーザーのAndyにアクセスする前にuserInfo.Nameにアクセスすることはできません。コード内で彼の名前を実際に知ることなくAndyにアクセスするにはどうすればよいですか?または、データを再構成する必要がありますか? –

関連する問題