Una función definida en algún componente, se recrea en cada renderizado, si no se memoriza con algún useCallback , eso es lo que he aprendido. ¿Se aplica esto a los establecedores de estado, como setState en el componente a continuación?
Que yo sepa, foo en el componente a continuación es típicamente una función que se recrea en cada renderizado.
import { useState } from "react"; export default function App() { const [state, setState] = useState(true); const foo = () => console.log("Hello Word"); return ( <div> <button onClick={() => setState(!state)}>Change state</button> </div> ); }No, se garantiza que la función de envío siempre permanecerá igual, por lo que no necesita colocarla en la matriz de dependencia. "React garantiza que la identidad de la función setState es estable y no cambiará en los renderizados". Reaccionar documentos