您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在React中使用componentWillMount或componentDidMount生命周期函数进行异步请求

在React中使用componentWillMount或componentDidMount生命周期函数进行异步请求

React docs建议使用componentDidMount发出网络请求

componentDidMount()挂载组件后立即调用。需要DOM节点的初始化应该在这里进行。如果需要从远程端点加载数据,这是实例化网络请求的好地方。

调用setState()方法将触发额外的渲染,但是可以保证在同一刻度内刷新。这样可以保证,即使render()在这种情况下将调用两次,用户也不会看到中间状态。

根据情况componentWillMount

这个生命周期废弃了,因为v16.3.0的反应,并且不再鼓励usage.However其重命名UNSAFE_componentWillUpdate和至少预计工作到 的反应

在呈现发生之前,将不会返回异步调用获取数据。这意味着组件将使用空数据至少渲染一次。

无法“暂停”渲染以等待数据到达。您不能componentWillMountsetTimeout某种方式退还诺言或争执。处理此问题的正确方法是设置组件的初始状态,以使其对渲染有效。

实际上,componentDidMount由于两个原因,这是发出调用获取数据的最佳位置:

其他 2022/1/1 18:19:02 有516人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶