我刚刚看了关于inside 的讨论。setState()
componentDidMount()
可以看到在
render()
函数之后,componentDidMount()
React 会调用该函数。当您setState()
调用时,componentDidMount()
您会导致整个组件树不仅重新渲染当前组件 - 不要忘记,当前组件刚刚完成渲染。
还有人建议把setState()
call 放在里面componentWillMount()
。在某些情况下,我想获取渲染元素的高度并将其存储为状态,而上述方法不起作用。我也看了一下React官网,里面建议做Ajax调用componentDidMount()
,又和上面的思路背道而驰。
那么,我把setState()
里面放错了componentDidMount()
吗?如果是,我应该申请什么作为替代方案?