This solution is generated by ChatGPT, correctness is not guaranteed. You might also be able to find a solution fromcommunity posts.
AI solution for React Quiz on BFE.dev
21. useEffect() II
The code outputs the following by console.log:
true
false
This is because useIsMounted
hook returns the value of isMounted.current
, which is initially set to false
. After rendering the Child
component, the useEffect
hook runs and sets the value of isMounted.current
to true
. The first console.log
statement in the useEffect
hook logs the initial value of isMounted.current
, which is true
. Then, a promise is resolved, and the second console.log
statement logs the new value of isMounted.current
, which is false
. This is because the unmount
function passed from the parent component was called, unregistering the component from the DOM and causing useIsMounted
to return false
.