Firebase + React - 不会改变我的状态

时间:2018-04-30 14:25:51

标签: javascript reactjs firebase firebase-realtime-database

我有这段代码:

componentDidMount() {
    const db = firebase.database();
    let dbRefRoot = db.ref().child('sponnsor');

    dbRefRoot.child('test').on('value', snap => {
        let userData = snap.val();
        console.log('test', userData );

        this.setState({
            test: snap.val()
        })
    })

}

我只是想确保它正在发挥作用,我正朝着正确的方向前进!因为每次我在Firebase上更新我的信息时,都不会发生任何事情!我期待看到我的控制台日志正常工作!它不是,我不明白为什么。

ps:我导入:从'firebase'导入*作为firebase;

我的对象:

{
	"sponnsor": {
		"test": 1234
	}
}

2 个答案:

答案 0 :(得分:0)

现在您已经发布了对象结构,我认为您应该这样做:

let dbRefRoot = db.ref().child('sponnsor');

dbRefRoot.on('value', snap => {
    let sponnsorData = snap.val();
    console.log('test', sponnsorData.test );

    this.setState({
        test: sponnsorData.test
    })
})

答案 1 :(得分:0)

像这样更新非常简单

firebase.database().ref('sponnsor')
.update({test:3456})