PureComponent is exactly the same as Component except that it handles the
shouldComponentUpdate method for us. When
PureComponent will do a shallow comparison on both
Component on the other hand won't compare current props and state to next out of the box. Thus, the component will re-render by default whenever
shouldComponentUpdate is called.
When comparing previous
It is good to prefer
Component whenever we never mutate our objects.