Can you help me to understand, why the value assign inside the useEffect is not global?
Please see code below:
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;
Re-assigning value does not cause a re-render, additionally, every render cycle, value is reset to undefined. What you want is something like:
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;