react生命周期详解

react生命周期函数:

1. constructor(props,context);
2. componentWillMount()挂载前调用,一次,如果此函数内调用setState,本次render函数可以看到更新后的state,并只渲染一次;
3. render()在componentWillMount后,componentDidMount前执行。触发条件:1.初始化页面,2.状态机改变setState,3.新props(父组件更新)。注意:组件所必不可少的核心函数;不能在该函数中修改状态机state;
4. componentDidMount()挂载后调用,一次,可使用refs属性;
5. componentWillReceiveProps(nextProps),props是父组件传给子组件的,父组件发生render时即调用;

6. shouldComponentUpdate(nextProps,nextState),

收到新的state或props时被调用。组件挂在后,每次setState后都会调用,判断是否需要重新渲染组件,默认返回true,需要重新render;if true,调用componentWillUpdate(nextProps,nextState);

7. componentWillUpdate()收到新的state或props后,立即调用。(被动的吧);
8. componentDidUpdate()重新渲染后调用,初始化时不会调用。作用:组件更新后,操作DOM元素;
9. componentWillUnmount()组件被卸载前调用。作用:清理,如清除定时器,或清除在componentDidMount()中创建的DOM元素。

猜你喜欢

转载自blog.csdn.net/Gytha_1/article/details/80062454