Post

What if you’re not dealing with a DOM element? In the case I saw, it was used to trigger i18n initialization Not sure why it had to be on mount—maybe to distinguish from server?

I think this makes my point A beginner shouldn't need to understand all that to wrap their head around useEffect(() => {}, []) === onMounted(() => {}) This is about empathizing with beginners, not trivializing concepts we already get

it’s unintuitive for people who want more explicitly defined control over stuff like onMounted, etc. but once you understand that useEffect runs only when the dependency array changes, it’s a pretty clean and neat abstraction

All things are “once you understand…”. Once upon a time people had to learn class component lifecycles as well. It’s just a different mode of thinking. Do you think this is an issue of education or poor design?

Yes, but its not a good sign if “once you understand, its fine” is the first line of defense The semantics can be improved for beginners