Firebaseを初めて使っているのですが、databaseからの値の読み取り方がよくわかりません。
データベース内のJsonは以下のような構成です。
ここからtweets以下のtextの値を、{text:test},{text:test},{text:test}...といったような形で配列に格納したいと考えています。
json
1{ 2 "tweets" : { 3 "-KzqcjiqOObM4xWgnV6m" : { 4 "text" : "test" 5 }, 6 "-Kzqd01BsRVOSs1sSdVj" : { 7 "text" : "test" 8 }, 9 "-KzqdMxli8vFLLwrR9yo" : { 10 "text" : "test" 11 }, 12 "-KzqddqAIIHHHK0kjThI" : { 13 "text" : "test" 14 } 15 } 16}
プログラムでは
React.js
1var firebaseRef = firebase.database().ref(); 2var tweetsRef = firebaseRef.child("tweets"); 3 4//略 5 6constructor(props) { 7 super(props); 8 this.state = {tweets: [] 9 }; 10 console.log("initialized"); 11 } 12 13 componentDidMount(){ 14 tweetsRef.on("value", function(snapshot){ 15 this.setState({ 16 tweets: snapshot.val() 17 }); 18 }); 19 } 20//略
といったように記述しているのですが、this.statのtweetsに値が入ってくれません。
snapshotとstateの型が違うからなのかと考え色々試してみましたが、どうしても読み込むことができず、詰まってしまっています。
firebaseについて詳しい型がいらっしゃいましたら、おかしな点についてご指摘いただければと思います。
よろしくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。