首页 > 解决方案 > 如何从 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>
)

标签: reactjsfirebasegoogle-cloud-firestorereact-hooks

解决方案


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

useEffect(() => {
  ....
}, [])

推荐阅读