调用 forceUpdate 后当前组件会跳过 shouldComponentUpdate 这个钩子,尽管手动返回 false,也一样会更新,但是需要注意的是,子组件的更新还是会受到 shouldComponentUpdate 控制。
调用 forceUpdate() 将会导致 render() 方法在相应的组件上被调用,并且子级组件也会调用自身的 render(),但是如果标记改变了,那么 React 仅会更新 DOM。
state 或 props 的数据this.state.xxx = xxx 后调用 forceUpdate() 使得组件重新渲染state 或 props 中的变量层级太深,更新时候没有自动触发重渲染state 或 redux 等 flux 架构管理 state不过对于以上情况,官方文档并不推荐这样处理,正常情况下应该避免使用 forceUpdate,而是通过 state 或 props 去驱动更新视图。