I am building a large application using React where a shared parent component handles all the state for multiple children. Some of these children render lists of over 1000 items.
I realize that toggling a boolean inside the parent with
Does the child re-build the list but the DOM never has to update because the diff sees that the list elements haven't changed?
Yes exactly. You can read about this in much more detail here: https://facebook.github.io/react/docs/reconciliation.html
Typically this operation is so fast you can hardly tell, however at some point the diff patch will become slow. Flipping a boolean is probably not a big deal, but flipping that boolean at 60 fps may cause some jank.
There are usually smart things you can do to prevent any noticeable lag, but implementing
shouldComponentUpdate is always a choice.
While you're there, read about
React.PureComponent in case this is something that interests you.