useEffect is a last resort
useEffect is a last resort.
3 cases where useEffect is overused:
1. To sync with state changes. Derive on each render instead. Memo if needed.
2. To respond to an event. Use an event handler instead.
3. To fetch on load. Use react-query or fetch on the server instead.
#react