¿Me pueden ayudar a entender por qué el valor asignado dentro de useEffect no es global?
Por favor, vea el código a continuación:
import React, { useState, useEffect } from "react"; import "./App.css"; function App() { let value; useEffect( () => { value = 2 }, []); console.log("Value: ", value) return ( <> { value } </> ); } export default App;La reasignación de valor no provoca una nueva representación, además, cada ciclo de representación, el valor se restablece a indefinido. Lo que quieres es algo como:
import React, { useState, useEffect } from "react"; import "./App.css"; function App() { const [value, setValue] = useState(); useEffect( () => { setValue(2) }, []); console.log("Value: ", value) return ( <> { value } </> ); } export default App;