Firebaseを使用してデータベースをセットアップしました。JSON情報を使用してデータベースを設定しました。 Firebaseのドキュメントから直接取得したコードがあり、データのスナップショットを取ってリアルタイムで更新します。これは私が必要なもののために素晴らしいですが、私はまた、これに同様のコンテンツのリストを生成するために、私のJSONの値にアクセスする必要があります。FirebaseからJSONオブジェクトを解析し、キー値のペアを使用してコンテンツを生成
var JSONStuff = json info on database
for (every array in the JSON)
{
//MAKE THINGS
}
私は通常のPHPスクリプトおよびSQLデータベースでこれを行うが、私は使用していますFirebaseは初めてで、私は何が間違っているのか分かりません。ここまで私がこれまで持っていたことがあります。
はJavaScript:
var display = document.getElementById("resultsDisplay");
var dbRef = firebase.database().ref().child("workouts");
// Sync with Firebase in real time.
dbRef.on("value", snap =>
{
//display.innerHTML = JSON.stringify(snap.val(), null, 3); This correctly prints my JSON.
JSON.stringify(snap.val(), null, 3);
});
JSON.parse(dbRef) //Trying to parse the JSON and do things with it.
{
for (var i = 0, len = dbRef.length; i < len; i++)
{
display.innerHTML = 'Routine: ' + dbRef.title + ' Exercises: ' + dbRef.name + '.';
}
};
HTML:エラー、私は私をいじって二重引用符があることを意味知っている:
<div id="resultsDisplay">boo</div>
コンソールが私に "JSONに予期しないトークンhの捕捉されないでSyntaxError" を与えますパーサのどこかにありますが、わかりましたが、私はそれらを関数で使用していません。
私はnoobですので、おそらく完全に愚かなことをしていますが、どんな助けでも大歓迎です。
値ではなくデータベース参照を 'JSON.parse'しようとしています。あなたは '.on( 'value')'コールバックの中で操作し、 'dbRef'ではなく、あなたのJSONに' snap.val() 'を使う必要があります。 –
ありがとうございます。しかし、私が達成したのは、コンソールのエラーを取り除くことです。私はkey:valueのペアを間違って参照していると推測します。 – Brian