¿Puede decirme cómo obtener datos cuando se agregan, eliminan o editan datos en el próximo js? He usado useEffect, usé un estado para ejecutar useEffect pero eso no funciona correctamente en mi caso, solo cuando agrego datos, se activa la función useEffect. Pero en editar o eliminar, no lo es. He usado varios componentes. Entonces, ¿cómo puedo lograr esto? (sin que el estado active la función useEffect). ¡Gracias por adelantado!
const [added, setAdded] = React.useState(0); React.useEffect(() => { async function getTodos() { const todosCol = collection(db, "todos"); const todoSnapshot = await getDocs(todosCol); const todoList = todoSnapshot.docs.map((doc) => doc.data()); setTodos(todoList); } getTodos(); console.log("Use effect ran!!!"); }, [added]);Estoy convencido. Debe usar Redux o cualquier otra herramienta de administración de estado para lograr esto . :)
Creo que su implementación necesita refactorización.
El problema son las variables mutables e inmutables. Pero si desea que este código funcione, simplemente almacene agregado como una propiedad dentro del estado para que React pueda rastrear los cambios.
algo como esto:
const [state, setState] = useState({added: 0});