Conversation

A year of React but I still get render loops I don't know how to fix in situations like: - A parent passes a onFinish prop to a child - The child calls the onFinish function at some point - onFinish changes something that causes a re-render
6
9
48
(This becomes more complicated when intermediate components between that parent and child wrap onFinish into their own onFinish function that's passed down. Same problem but more steps makes it much more confusing.)
1
1
6
It seems like useCallback roughly doubles the code size whenever I do it. Here's an actual screenshot of what it takes to satisfy the linter with and without useCallback. This is the actual example that prompted these tweets.
Image
6
1
12
Interesting. I haven't tried this in code, but I can imagine situations where this would genuinely violate the dependencies that should be in place. E.g. if you conditionally define a callback to be one function body or another, then pass it down. Right?
2
Show replies