在写react组件的时候,会有这个警告

 

Can't perform a React state update on an unmounted component.
This is a no-op, but it indicates a memory leak in your application.
 To fix, cancel all subscriptions and asynchronous tasks in the componentWillUnmount method”

  解决方法:利用生命周期钩子函数:componentWillUnmount,在组件卸载前清除timer

 

   // 组件加载完毕 启动定时器
      settimem: setTimeout(this.iTimer, 3000),


 // 定时器
  iTimer = () => {
    this.setState({
      timer: setInterval(() => {
        this.postuseinfo(sessionStorage.getItem("huihuaid"));
      }, 20000),
    });

// 组件清除时清除定时器
  componentWillUnmount() {
    clearInterval(this.state.timer && this.state.timer);
    clearInterval(this.state.settimem && this.state.settimem);
  }

  

相关文章:

  • 2021-07-05
  • 2021-07-14
  • 2021-10-08
  • 2022-12-23
  • 2021-06-21
  • 2021-06-11
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-01
  • 2021-10-28
  • 2021-10-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案