4 ms·
Because the parent might render often.
by RussianCow 7y ago
Because the parent might render often.
- erikpukinskis 7y agoThat shouldn’t cause the child to re-render?
- RussianCow 7y agoI'm not sure why you think it wouldn't. Any time a component renders, React also renders all of its children except the ones for which shouldComponentUpdate returns false. If that is defined by using PureComponent or React.memo on a child, then you have to make sure that the props you pass in are not going to change on every re-render (i.e. you can't pass an un-memoized callback because a new function reference will be created on every render). I've created a CodePen to illustrate: https://codepen.io/RussianCow/pen/xxbERLL https://codepen.io/RussianCow/pen/xxbERLL Open the console and watch as the "render child" message is logged once per second, showing that the child is re-rendered every time the parent is.