<div onClick={() => { setTest1((x: number) => x + 1); setTest2((x: number) => x + 3); }} > one? two? </div> const [test1, setTest1] = useState(1); const [test2, setTest2] = useState(1); useEffect(() => { console.log('!@#$'); console.log(test1, test2); }, [test1, test2]);Test1 y test2 cambiaron al mismo tiempo a través de onClick, pero '!@#$' se imprime solo una vez en la consola, por lo que incluso si cambian varios estados, parece que useEffect se ejecuta solo una vez. Me pregunto por qué se ejecuta solo una vez.