【发布时间】:2023-02-15 00:41:50
【问题描述】:
大家好! 所以在我的项目中,我在 useEffect 中执行了一个获取数据的功能,但是当我向 firestore 添加一个新元素时,我希望 useEffect 再次运行,以便在列表中包含添加的元素,有人可以给我建议我该如何做做吗?
useEffect(() => { if (session) { fetchTodos(); } }, [session]); const fetchTodos = async () => { const fetchedtodos = []; const querySnapshot = await getDocs(collection(db, session.user.uid)); querySnapshot.forEach((doc) => { return fetchedtodos.push({ id: doc.id, data: doc.data() }); }); setTodos(fetchedtodos); }; const submitHandler = async (todo) => { const data = await addDoc(collection(db, session.user.uid), { todo, createdAt: serverTimestamp(), type: "active", }); }我希望当我运行 submitHandler 时 useeffect 再次运行所以列表将是最新的
【问题讨论】:
标签: reactjs react-hooks