生命周期分为三个阶段,分别是挂载阶段、更新阶段、卸载阶段。
挂载阶段
- constructor():构造函数,最先被执行,通常会在里面声明state对象或自定义方法绑定this。constructor有参数props,想在函数内部使用参数时,需要使用super()传入这个参数。
- render(): 只返回需要渲染的东西。更改state或props会重新渲染。
- componentDidMount(): 组件挂载之后调用,此函数可以获取dom节点并且操作。可以在这里面进行ajax请求等。一定别忘记在componentWillMount中取消ajax请求
更新阶段
componentDidUpdate(prevProps,prevState):组件更新完成时触发的函数
这是组件更新之后触发的生命周期钩子,组件更新完毕后,react只会在第一次初始化成功会进入componentDidMount,之后每次重新渲染后都会进入这个生命周期,这里可以拿到prevProps和prevState,即更新前的props和state。
卸载阶段
componentWillUnMount ():组件将要销毁时触发的函数,这是组件卸载之前的生命周期钩子,在此处完成组件的卸载和数据的销毁。