Hacker News new | past | comments | ask | show | jobs | submit login

Isn't this exactly what useLayoutEffect is for? https://react.dev/reference/react/useLayoutEffect



useLayoutEffect is called after the render cycle but before the “paint”. useMemo is called during the render cycle (i.e. immediately).

You can confirm this via console.log:

useMemo(() => console.log(1), [])

console.log(2)

… will print 1 then 2.

If you replace useMemo with useLayoutEffect, you’ll get 2 then 1.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: