私は、ユーザーがすべての投稿を表示して編集できるHTMLページを作成しています。現時点では、私はちょうど私が目的のデータを取得するかどうかを確認する結果をログにコンソールですが、私はエラーやデータを受信していないよ。Firebaseデータベースを照会してもデータやエラーが発生しない
ページには現在サインインしているユーザーの投稿のみが表示されますが、Firebaseデータベースにそのユーザーの投稿があるにもかかわらず、以下のコードでは何も返されません。
現在ログインしているユーザーの投稿のみを表示する方法はありますか?
{
"posts" : {
"-KnP3MkFt5559uP1w5fh" : {
"content" : "content 1",
"title" : "title 1",
"uid" : "O96P2INZn6S42dqqwgtz2OfgmYb2"
},
"-KnPPwHhfXDv34Lr0HMP" : {
"content" : "content 2",
"title" : "title 2",
"uid" : "B3nHbd7G49Y2iwSA3tJSaHFVuCq2"
},
"-KnPR_ZsgOwrpRDGZkHT" : {
"content" : "content 3",
"title" : "title 3",
"uid" : "O96P2INZn6S42dqqwgtz2OfgmYb2"
}
},
"profiles" : {
"B3nHbd7G49Y2iwSA3tJSaHFVuCq2" : {
"email" : "-",
"firstName" : "-",
"lastName" : "-"
},
"O96P2INZn6S42dqqwgtz2OfgmYb2" : {
"email" : "-",
"firstName" : "firstFirst",
"lastName" : "firstLast"
}
},
"user-posts" : {
"-KnP3MkFt5559uP1w5fh" : {
"content" : "content 1",
"title" : "title 1",
"uid" : "O96P2INZn6S42dqqwgtz2OfgmYb2"
},
"-KnPPwHhfXDv34Lr0HMP" : {
"content" : "content 2",
"title" : "title 2",
"uid" : "B3nHbd7G49Y2iwSA3tJSaHFVuCq2"
},
"-KnPR_ZsgOwrpRDGZkHT" : {
"content" : "content 3",
"title" : "title 3",
"uid" : "O96P2INZn6S42dqqwgtz2OfgmYb2"
}
}
}
は、ここに私のjavascriptです:
firebase.auth().onAuthStateChanged(function (firebaseUser) {
if (firebaseUser) {
var userid = firebase.auth().currentUser.uid;
var myPostsRef = firebase.database().ref('user-posts');
myPostsRef.orderByChild('uid').equalTo('userid').on('child_added', function(snapshot) {
snapshot.forEach(function(snapshot) {
var myPostData = snapshot.val();
console.log(myPostData);
});
});
さてあなたはすべてのエラーをキャッチしていないので、あなたがそれらを見ていないだろうすべての時間に発生します。 '.catch(function(error){console.log(error)}'のようなものを追加すると 'onAuthStateChanged'と' on( 'child_added''は両方ともエラーコールバックを返します)、エラーが表示されます – edzillion