首页 > 其他 > 详细

React componentWillMount

时间:2019-07-22 13:27:57      阅读:125      评论:0      收藏:0      [点我收藏+]

今天在写React时,遇到的一个问题:

我在父组件里引用了子组件,在 componentWillMount() 中调用了一个异步函数,在返回结果中调用 this.setState() 来保存数据,在子组件的select下拉框里,使用state来渲染,结果子组件一直没值。

仔细检查后,查寻API:

omponentWillMount 在渲染前调用,在客户端也在服务端。

componentDidMount : 在第一次渲染后调用,只在客户端。之后组件已经生成了对应的DOM结构,可以通过this.getDOMNode()来进行访问,在这方法中调用setState方法,会触发重渲染。

 componentWillReceiveProps 在组件接收到一个新的 prop (更新后)时被调用。这个方法在初始化render时不会被调用。

shouldComponentUpdate 返回一个布尔值。在组件接收到新的props或者state时被调用。在初始化时或者使用forceUpdate时不被调用。 可以在你确认不需要更新组件时使用。

componentWillUpdate在组件接收到新的props或者state但还没有render时被调用。在初始化时不会被调用。

componentDidUpdate 在组件完成更新后立即调用。在初始化时不会被调用。 componentWillUnmount在组件从 DOM 中移除的时候立刻被调用。

 

解决办法:

将异步方法这些放在componentDidMount中,就不会出现这个问题

 

React componentWillMount

原文:https://www.cnblogs.com/tylz/p/11224849.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!