問題描述
當(dāng)調(diào)用方法:this.setState({...}) 時榔袋,系統(tǒng)內(nèi)部會調(diào)用 render() 方法悄窃,render 成功之后會進(jìn)入 componentDidUpdate() 回調(diào)方法。如果在 componentDidUpdate() 方法中直接或間接調(diào)用了 setState() 方法粱挡,就會進(jìn)入死循環(huán)围苫。
解決方案
在 componentDidUpdate() 方法中要避免調(diào)用 setState() 方法奄喂,如果確實無法避免,可以通過一個全局標(biāo)志位判斷 componentDidUpdate() 中是否需要調(diào)用 setState()绵脯。
Write by Raykle