gpt4 book ai didi

firebase - 在未触发值更改时 react native firebase 数据库

转载 作者:行者123 更新时间:2023-12-05 07:28:48 25 4
gpt4 key购买 nike

我有一个 React native 应用程序并使用 firebase 数据库。

我尝试使用 ononce 函数从数据库中获取项目,但我不知道我做错了什么,因为我没有获取任何数据.

这是我从 firebase 数据库获取数据的代码:

firebase.database().ref("messages/").once('value', snapshot => {console.log("snapshot value", snapshot)});

我也使用 on 而不是 once 尝试上面的命令,结果相同。 console.log 永远不会被调用。

当我添加消息时,一切正常,消息出现在 firebase 控制台中。为了添加消息,我这样做:

firebase.database().ref("messages/").push(message);

对于 firebase,我使用这个库:rnfirebase.io

这是使用的版本: react :16.6.0-alpha.8af6728 react native :0.57.4 react native firebase:5.0.0

最佳答案

Firebase once 返回一个 promise,所以你必须在使用值之后使用 then。代码应该是这样的

 firebase.database().ref('tableNameHere').once('value').then(snapshot => {
if(snapshot.exists()){
console.log(snapshot.val());
}
}).catch(err => console.log(err));

当使用值时,函数将调用值的变化,就像 CRUD 操作一样

 firebase.database().ref('tableNameHere').on('value', snapshot => {
if(snapshot.exists()){
console.log(snapshot.val());
}
},(err) => console.log(err))

关于firebase - 在未触发值更改时 react native firebase 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53145363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com