react 生命周期
2017-01-17 17:32
239 查看
之前在写react的时候,由于才接触这个框架,对于生命周期组件一般都只会用到基本的1-2个。最近抽空好好看了一下,大部分生命周期函数都是比较好理解的。
这里主要说一下componentWillReceivePorps(nextProps)函数。
解释:当
比方说你的子组件通用props调用了父组件的数据A,那么当父组件里对A进行修改的时候,这个函数就会触发。
代码截图:
![](https://img-blog.csdn.net/20170117174023433)
这里words的初始值是123456789,那么当我们在父组件里修改words的值后就会触发componentWillReceivePorps,然后我们将新旧数据传递给pre和next,再将它显示出来,我们看看效果:
修改前:
![](https://img-blog.csdn.net/20170117174521201)
修改后:
![](https://img-blog.csdn.net/20170117174554528)
这里特别提一下shouldComponentUpdate函数,什么用呢?
这个方法在初始化
9b2f
这里主要说一下componentWillReceivePorps(nextProps)函数。
解释:当
props发生变化时执行,初始化
render时不执行,在这个回调函数里面,你可以根据属性的变化,通过调用
this.setState()来更新你的组件状态,旧的属性还是可以通过
this.props来获取,这里调用更新状态是安全的,并不会触发额外的
render调用。
比方说你的子组件通用props调用了父组件的数据A,那么当父组件里对A进行修改的时候,这个函数就会触发。
代码截图:
这里words的初始值是123456789,那么当我们在父组件里修改words的值后就会触发componentWillReceivePorps,然后我们将新旧数据传递给pre和next,再将它显示出来,我们看看效果:
修改前:
修改后:
这里特别提一下shouldComponentUpdate函数,什么用呢?
这个方法在初始化
render时不会执行,当props或者state发生变化时执行,并且是在
render之前,当新的
props或者
state不需要更新组件时,返回false,将不会执行
render()方法。其实就是主要用于优化性能的。
相关文章推荐
- React学习之State与生命周期基友情(四)
- react-组件生命周期
- RN(react native)入坑指南-10,组件的生命周期
- ReactNaive组件生命周期
- React生命周期及事件详解
- react学习小结(生命周期- 实例化时期 - 存在期- 销毁时期)
- react学习笔记 item7 --- 组件的生命周期
- 一张图了解react生命周期
- React学习-- React源码(3)生命周期的管理艺术
- React 组件生命周期
- vue生命周期和react生命周期对比
- React组件生命周期-初始化阶段的函数执行顺序
- react生命周期
- React生命周期函数
- React Native 中组件的生命周期
- 5.React中文之状态和生命周期
- React源码分析4 — React生命周期详解
- React生命周期中应该做什么事
- React组件的生命周期及执行顺序
- React生命周期