1. 程式人生 > >【React踩坑記三】React項目報錯Can't perform a React state update on an unmounted component

【React踩坑記三】React項目報錯Can't perform a React state update on an unmounted component

-o clas sha ces ESS eventbus event log back

意思為:我們不能在組件銷毀後設置state,防止出現內存泄漏的情況

分析出現問題的原因:

我這裏在組件加載完成的鉤子函數裏調用了一個EventBus的異步方法,如果監聽到異步方法,則會更新state中isShowNav的值。
技術分享圖片

解決方法

我們應該在組件銷毀的時候將異步方法撤銷

技術分享圖片

this.setState = (state, callback) => {
  return;
};

【React踩坑記三】React項目報錯Can't perform a React state update on an unmounted component