性命状况:
Mounting:已插进去实在DOM节点
Updating:正在从新衬着
Unmounting:已移出实在节点
Mounting
Updating
大抵递次:
两个挂载:
componentWillMount()
1、服务端和客户端都只挪用一次
2、在初始化衬着之前挪用
所以,假如这里挪用setState,则会在render中感知到state的变化。
componentDidMount()
1、仅在客户端有用
2、初始化衬着以后马上挪用一次
这时刻已有成型的DOM树了,所以能够经由过程this.getDOMNode()来猎取DOM
四个更新
componentWillReciverPros(nextProps)
1、在接收到新的参数(props)时,会被实行
2、在render之前被挪用
3、在初始化衬着的时刻,不会被挪用
若挪用this.setState()并不会引起第二次衬着。
shouldComponentUpdate(nextProps, nextState)
1、在接收到新的 props或state时,挪用
2、在render之前被挪用
3、初始化衬着不挪用
若返回false,则组件不会更新(即render()不会被实行),同时,componentWillUpdate和componentDidUpdate也不会被实行。
componentWillUpdate(nextProps, nextState)
1、在接收到新的 props或state前,马上挪用
2、初始化衬着不挪用
不能运用this.setState
componentDidUpdate(prevProps, prevState)
1、在组件更新已同步到DOM上以后挪用
2、初始化衬着不挪用
一个移除
componentWillUnmount
在组件将被移出的时刻挪用