首页 > 解决方案 > React 中的 ComponentDidMount 和渲染关系

问题描述

我读过 componentDidMount 在 React 组件中渲染后运行,但我还是有点困惑。假设我在 componentDidMount 中向 API 发出请求以填充我的状态,但如果渲染在 componentDidMount 之前运行,我的应用程序如何向用户显示信息?React 组件是否在执行类似 render() -> componentDidMount() -> render() 的操作?如果是这样,在 componentDidMount() 之前运行 render() 有什么好处?

标签: javascriptreactjs

解决方案


当您更新其状态或道具更改时,组件会重新呈现。因此,如果您在 componentDidMount() 中更新其状态,则组件会重新渲染。

正如其名称所示,ComponentDidMount 的存在是为了让您知道您的组件已安装。因此,例如,如果您需要从 jsx 中获取某物的高度,您可以在此处执行,您不会收到错误提示您的引用未定义,因为您的组件已安装并且节点存在。


推荐阅读