I'm new to react so maybe I'm missing something but I've encountered something weird.
I have this useState
const [postsurl, setPostsurl] = useState([])
and then I fill it with data from a promise
setPostsurl(result.data)
When I console.log the result.data after this, it prints out the data just fine. However, when I console.log(postsurl) after setting it, it's still an empty array. I'm assuming this has to do with the way the language works. Is there any way to resolve this?
When you try to console.log() your states right after your state setter is called, your state probably would not be updated by then because React sets the state asynchronously. useEffect can help you with that, you can console.log() your state every time it changes. Something like this:
useEffect(() => {
console.log(postsurl)
}, [postsurl])