DEV Community

Discussion on: Correctly handling async/await in React components

Collapse
 
fefitin profile image
Fe

Very interesting, I hadn’t come across those issues until I read your post. Quick question: why are you using a ref instead of a regular state var in your first fix? Thanks!

Collapse
 
alexandrudanpop profile image
Alexandru-Dan Pop

By state var you mean having a setState({isUnmounted:true}) in the cleanup function of the first useEffect?

Don't think that will work, it might complain with the same: Cannot setState on unmounted warning. It seems refs are kept around even after Component unmounts, that's why they work in this case.

The React docs are a bit confusing, because they state refs live the same lifetime as components but obviously they stick around at least for as long as your async code still runs.

Collapse
 
fefitin profile image
Fe

Great, that's good to know, thanks!