react生命周期

- getDefaultProps对于组件来说,这个方法只会被调用一次。对于那些没有被父辈组件指定props属性的新建实例来说,这个方法返回的对象可用于为实例设置默认的props值。
- getInitialState对于组件的每个实例来说,这个方法的调用次数有且只有一次。在这李你将有机会初始化每个实例的state。与getDefaultProps方法不同的是,每次实例创建时该方法都会被调用一次。在这个方法里,你可以访问到this.props。
- componentWillMount防止二次渲染,该方法会在完成首次渲染之前被调用。这也是render方法调用前可以修改组件state的最后一次机会。
- render在这里你会创建一个虚拟DOM,用来表示组件的输出。对于一个组件来说,render是唯一一个必需的方法,并且有特定的规则。render方法需要满足下面几点:
  - 只能通过this.props和this.state访问数据。
  - 可以返回null,false或者任何React组件。
  - 只能出现一个顶级组件(不能返回一组元素)。
  - 必须纯净,意味着不能改变组件的状态或者修改DOM的输出。
  - render方法返回的结果不是真正的DOM,而是一个虚拟的表现,React随后会把它和真实的DOM做对比,来判断是否有必要做出修改。
- componentDidMount获取Dom。在render方法成功调用比并且真实的DOM已经被渲染之后,你可以在componentDidMount内部通过this.getDOMNode()方法访问到它。这就是你可以用来访问原始DOM的生命周期钩子函数。比如,当你需要测量渲染出DOM元素的高度,或者使用使用计时器来操作它,亦或运行一个自定义的jQuery插件时,可以将这些操作挂载到这个方法上。
componentWillUnmount卸载。最后,随着一个组件从它的层级结构中移除,这个组件的生命也走到了尽头。该方法会在组件被移除之前被调用,让你有机会做一些清理工作。你在componentDidMount方法中添加的所有任务都需要在该方法中撤销,比如创建的定时器或者添加的事件监听器。
- componentWillReceiveProps 在任意时刻,组件的props都可以通过父辈组件来更改。出现这种情况时,componentWillReceiveProps方法会被调用,你也将获得更改props对象及更新state的机会。
- shouldComponentUpdate通过调用shouldComponentUpdate方法在组件渲染时进行精确优化。如果你确定某个组件或者它的任何子组件不需要渲染新的props或者state,则该方法会返回false。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值