MERN Stack Development's hooks carry over unchanged, because React Native 36,878 runs the same React 7,897 (19.2.3 here); they just touch native views and native events instead of DOM nodes and window.
| Hook | In React Native |
|---|---|
| useEffect | Subscribe to AppState, Keyboard, BackHandler; always clean up |
| useLayoutEffect | Reads layout before the frame shows (New Architecture) |
| useRef | Holds native views for focus(), measure(), scrollToOffset() |
| useContext, use | App-wide theme, cart and user (Building a Dark Mode Toggle) |
| useTransition, useDeferredValue | Concurrent rendering, New Architecture only |
Under the old bridge, a tooltip placed from onLayout showed for a frame in the wrong spot; the New Architecture (the default since 0.76) lets useLayoutEffect measure and fix it first. There is no <form>, so form actions give way to handlers called from onPress (Forms and Validation).