如何从firebase firestore快照中获取对象(React Hooks)



我在ReactJS中使用Firebase Firestore,想要获取数据,如何将收到的全部数据设置为post?

const [state, setState] = useState([])    
useEffect(() => {
database
.firestore()
.collection("news")
.get()
.then(snapshots => {
setState(snapshots.docs)
})
.catch(err => {
console.log(err)
})
})

return(
<div>
<div className="px-2">
<div className="flex -mx-2">
{state.map(data => <span>{data.title}<span>)}
</div>
</div>
</div>
)

在.collection上,如果您想用快照监视它,您会这样做。

.onSnapshot(function (querySnapshot) {
const news = [];
querySnapshot.forEach(function (doc) {
news.push(doc.data());
});
setState(news);

使用可以完成一次通话

不要忘记将第二个参数添加到useEffect方法中,否则它将被调用无限次。

PD_4

相关内容

  • 没有找到相关文章

最新更新