entonces en tu ejemplo sería recomendable mover la función fetch fuera del useEffect? asumiendo que en la mayoria de los casos este fetch podría venir acompañado de más cosas como un dispatch .
El problema de mover fetch fuera del efecto es que ahora esa función que crearás será dependencia del efecto, y si no es idempotente entonces será creada en cada re-render por lo que el efecto se emitirá constantemente.
Puedes usar React.useCallback para evitar esto.
Mi pregunta es más que nada porque al meter todo dentro del useEffect me sugiere agregar el dispatch en el array de dependencias y se siente extraño, es normal que así sea?
Bueno dispatch es una función "especial". React te asegura que no cambiará entre renders (es idempotente) por lo que, en este caso particular, no afecta su presencia (o ausencia) en las dependencias
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
entonces en tu ejemplo sería recomendable mover la función fetch fuera del useEffect? asumiendo que en la mayoria de los casos este fetch podría venir acompañado de más cosas como un dispatch .
El problema de mover
fetch
fuera del efecto es que ahora esa función que crearás será dependencia del efecto, y si no es idempotente entonces será creada en cada re-render por lo que el efecto se emitirá constantemente.Puedes usar React.useCallback para evitar esto.
Mi pregunta es más que nada porque al meter todo dentro del useEffect me sugiere agregar el dispatch en el array de dependencias y se siente extraño, es normal que así sea?
Bueno dispatch es una función "especial". React te asegura que no cambiará entre renders (es idempotente) por lo que, en este caso particular, no afecta su presencia (o ausencia) en las dependencias