Updating: shouldComponentUpdate
boolean shouldComponentUpdate( object nextProps, object nextState )
Invoked before rendering when new props or state are being received. This method is not called for the initial render or when forceUpdate
is used.
Use this as an opportunity to return false
when you're certain that the transition to the new props and state will not require a component update.
shouldComponentUpdate: function(nextProps, nextState) { return nextProps.id !== this.props.id; }
If shouldComponentUpdate
returns false, then render()
will be completely skipped until the next state change. In addition, componentWillUpdate
and componentDidUpdate
will not be called.
By default, shouldComponentUpdate
always returns true
to prevent subtle bugs when state
is mutated in place, but if you are careful to always treat state
as immutable and to read only from props
and state
in render()
then you can override shouldComponentUpdate
with an implementation that compares the old props and state to their replacements.
If performance is a bottleneck, especially with dozens or hundreds of components, use shouldComponentUpdate
to speed up your app.
Please login to continue.