react中componentWillUnmount中可以做的事

说明:

  • 当页面发生跳转后但由于前一个页面请求还没有结束,或者事件 定时器没有结束,但是页面跳转到下一个页面了,此时就会报错。
  • 通常是 react 组件已经从 DOM 中移除,但是我们在组件中做的一些异步操作还未结束,如:接口调用等,当其完成时,执行setState操作,而此时我们已经将改组件dom移除,从而导致上述问题。

可以做的事

1 清除定时器

componentWillUnmount(){
  clearTimeout(this.timer)
}

2 解绑dom事件

componentWillUnmount(){
  //其他事件也类似
  window.onScroll = null
}

3 清除网络状态

componentWillUnmount(){
  //其他事件也类似
  this.setState = (state,callback) => {
    return
  }
}

你可能感兴趣的:(react中componentWillUnmount中可以做的事)