Firebase 不';t从firestore加载数据
我已经为firestore创建了数据。但是它给出了空数组。它一次渲染两次,第一次是空数组,第二次是数据对象。我还使用了UseMoom。 以下是firestore的数据模型: 我的代码是:Firebase 不';t从firestore加载数据,firebase,Firebase,我已经为firestore创建了数据。但是它给出了空数组。它一次渲染两次,第一次是空数组,第二次是数据对象。我还使用了UseMoom。 以下是firestore的数据模型: 我的代码是: const [posts, setPosts] = useState([]); useEffect(() => { db.collection("posts").onSnapshot((snapshot) => snapshot.docs.map((doc) =&g
const [posts, setPosts] = useState([]);
useEffect(() => {
db.collection("posts").onSnapshot((snapshot) =>
snapshot.docs.map((doc) => setPosts({ id: doc.id, data: doc.data() }))
);
},[]) 试试这个解决方案。您必须将POST临时推送到函数内部的数组中,然后将该数组设置为
POST
const [posts, setPosts] = useState([]);
function fetchPosts() {
const docList = [];
firebase
.firestore()
.collection("posts")
.onSnapshot((snapshot) => {
snapshot.forEach((doc) => {
docList.push({
id: doc.id
data: doc.data()
});
});
setPosts(docList);
});
}
useEffect(() => {
fetchPosts()
}, [])