3 ms·
I'd be frustrated with React too if I worked in team where these things are not well understood. You don't need to read "multiple articles" about these things,
by korm 3y ago
I'd be frustrated with React too if I worked in team where these things are not well understood.
You don't need to read "multiple articles" about these things, they're explained clearly in the docs
- https://react.dev/reference/react/useMemo#memoizing-a-function https://react.dev/reference/react/useMemo#memoizing-a-functi...
- https://react.dev/reference/react/useCallback#how-is-usecallback-related-to-usememo https://react.dev/reference/react/useCallback#how-is-usecall...
- https://react.dev/reference/react/useEffect#specifying-reactive-dependencies https://react.dev/reference/react/useEffect#specifying-react...
To answer OP's questions, useCallback is
function useCallback(fn, dependencies) {
return useMemo(() => fn, dependencies);
}
As for useEffect, everything that might change between renders, eg props used in the effect, must go in the dependency array.
- leodriesch 3y agoThe linter plugin for hook dependencies is pretty great, I very very rarely need to specify a dependency array different from the one the linter suggests.