美文网首页
react生命周期理解

react生命周期理解

作者: gz郭小敏 | 来源:发表于2016-11-08 14:11 被阅读0次
Paste_Image.png

1、getIntialState()方法
这个方法在组件没有mouting之前调用,在这个方法中可以初始化一些数据,例如state。这个方法在组件创建的时候调用一次,之后就不会再被调用了,除非组件销毁,重新创建。
在这个方法中已经可以访问到this.props了。

getDefaultProps()方法

作用于组件类,只调用一次,返回对象用于设置默认的props,对于引用值,会在实例中共享。

2、componentWillMount()方法
这个方法在组件已经即将创建但是还没有创建的时候调用,在这里可以用setState修改state。但是react建议是在组件mouted以后调用setState函数,否则容易报警告。这点在介绍state的时候在详细分析。

3、render方法
这个方法是react组件唯一必需的函数,这个方法用于创建虚拟DOM。
这个方法里数据只能通过this.state和this.props输出。
要注意一点返回的组件必须有一个顶级的组件,也就是说所有的标签必须被一个父标签包裹。

4、componentDidMount()方法
组件真正在被装载之后,可以修改DOM
这个方法中可以调用Rect.findDOMNode()方法,访问Dom节点(注:在react 0.13版本中用this.getDOMNode()方法而且返回的是虚拟DOM,不能直接访问DOM节点)
访问DOM节点时,react 提供了refs对象,可以同个refs对象直接访问到相应的节点上:
例如:
<div ref='app'></div>
可以通过Rect.findDOMNode(this.refs.app)直接访问到div节点

5.componentWillReceiveProps
组件接收到新的props时调用,并将其作为参数nextProps使用,此时可以更改组件props及state。
componentWillReceiveProps: function(nextProps) {
console.log(this.props.color);//原来的颜色
console.log(nextProps.color);//将要变成的颜色
}

6.shouldComponentUpdate
组件是否应当渲染新的props或state,返回false表示跳过后续的生命周期方法,通常不需要使用以避免出现bug。在出现应用的瓶颈时,可通过该方法进行适当的优化。
在首次渲染期间或者调用了forceUpdate方法后,该方法不会被调用
shouldComponentUpdate:function (nextProps,nextState) {
console.log(nextProps,'nextProps');
console.log(nextState,'nextState');
return false;
}

7.componentWillUpdate
接收到新的props或者state后,进行渲染之前调用,此时不允许更新props或state。

8.componentDidUpdate
完成渲染新的props或者state后调用,此时可以访问到新的DOM元素。

9.componentWillUnmount
组件被移除之前被调用,可以用于做一些清理工作,在componentDidMount方法中添加的所有任务都需要在该方法中撤销,比如创建的定时器或添加的事件监听器。

相关文章

  • React组件生命周期

    问题 理解React组件的生命周期 知识点 React流程状态图 注意:流程状态图为使用React.createC...

  • react 生命周期

    React 生命周期文档 1、理解 组件对象从创建到死亡它会经历特定的生命周期阶段 React组件对象包含一系列的...

  • 面试官:说说你对react生命周期的理解

    面试官:说说你对react生命周期的理解 hello,这里是潇晨,今天我们来看下react生命周期在各个阶段是怎样...

  • React概念图

    React概念图 React组件生命周期概念图 参考文档:React入门教程 组件生命周期React:组件生命周期...

  • 4.组件的生命周期

    了解React生命周期,对我们理解React的工作过程很有帮助。所有的事物都有自己的生命过程,React组件也不例...

  • React基础篇之组件的生命周期

    引出生命周期 react生命周期(旧) react生命周期(新) getSnapshotBeforeUpdate的...

  • React 生命周期初探

    概论 什么是生命周期 个人理解的生命周期就是一个对象从开始生成到最后销毁所经历的不同状态,React 生命周期可分...

  • React生命周期

    React v16.0前的生命周期 React v16.4+ 的生命周期图 React v16.9后这些生命周期钩...

  • React生命周期理解

    render:纯粹的返回值,方便看组件的作用 返回值: * **React elements.** * **A...

  • 理解React生命周期

    constructor React借用class类的constructor充当初始化钩子。在我们类扩展任何其他具有...

网友评论

      本文标题:react生命周期理解

      本文链接:https://www.haomeiwen.com/subject/vovauttx.html