スマートホームダッシュボード(リアクションとファイヤーベースで構築)用の人物トラッカーを設定しました。しかし、firebaseデータベースが変更されたとき、それは反応コンポーネントに再描画を引き起こしていません。私はどこに間違っているのか分からない、誰かが私を助けてくれますか?ファイヤーベースの更新時に反応コンポーネントが更新されない
import React from 'react';
import * as firebase from 'firebase';
import moment from 'moment';
export default class IO extends React.Component {
constructor() {
super();
this.state = {
people: []
};
}
componentDidMount() {
let peopleArray = []
this.dbroot = firebase.database().ref().child('io')
this.dbroot.on('value', snapshot => {
snapshot.forEach((snap) => {
if(snap.val().active === true) {
peopleArray.push(snap.val())
}
})
this.setState({people: peopleArray})
});
}
render() {
return(
<section class="c-module c-module_IO">
<ul>
{
this.state.people.map((p) => {
return <li key={ p.name } class={'status--'+p.status}><img src={p.image} alt={ p.name } /></li>
})
}
</ul>
</section>
)
}
}
感謝の男:ここ
は、最終的なCDMです!それは魅力のように働いた! –