旧版 <16.0.0
- constructor 初始化阶段 严禁setState
- componentWillMount 会造成很多bug,新版中被移除
- render
- 返回一个虚拟dom,会被挂载到虚拟dom树,最终渲染到真实dom中
- 不可能只运行一次,只要需要重新渲染,就会重新运行
- 严禁使用setState,会造成无限递归渲染
- componentDidMount
- 只会执行一次
- 可以使用setState
- 通常情况下会将网络请求,启动定时器等一开始需要的操作写到这个函数中
- 组件进入活跃状态(时刻等待重新渲染)
- componentWillReceviceProps
- 即将接手新的属性值
- 参数为新的属性对象
- 可能导致bug,不推荐使用
- shouldComponentUpdate
- 指示是否要重新渲染,通过返回布尔值决定
- componentWillUpdate
- 组件即将被重新渲染
- componentDidUpdate
- 往往在此使用dom操作改变元素
- componentWillUnmount
- 组件即将被销毁,在此通常销毁一些依赖资源,比如计时器
- 组件即将被销毁,在此通常销毁一些依赖资源,比如计时器
新版 >=16.0.0
资料源自渡一教育袁进老师