【发布时间】:2022-02-07 12:48:50
【问题描述】:
我正在为我的 react 项目使用 Firebase 实时数据库。我尝试遵循 firebase 文档并使用“onValue()”来检索数据。这是我的代码:
export default function Home() {
const {currentUser} = useAuth();
const [userinfo,setUserinfo] = React.useState();
const uid = currentUser.uid
const db = getDatabase();
onValue(ref(db,`users/${uid}`),snapshot=>{
const data = snapshot.val();
setUserinfo(data);
})
console.log(userinfo);
return (
<main id="home">
<Hero />
</main>
)
}
这会导致重新渲染过多的错误。我不知道如何检索数据。如果我使用
onValue(ref(db,`users/${uid}`),snapshot=>{
const data = snapshot.val();
console.log(data);
})
然后正确的数据将在控制台中完美地打印出来。我还尝试了以下方法:
let info;
onValue(ref(db,`users/${uid}`),snapshot=>{
const data = snapshot.val();
info = data;
})
console.log(info)
但信息只是未定义。我似乎无法弄清楚这里的问题。我如何使用这些数据?
【问题讨论】:
标签: reactjs firebase-realtime-database