1.componentWillMount
- 表示组件将要挂载。
- 可以获取this 数据 不能获取dom。
- 修改数据 可以直接引起页面的改变。
- 修改数据 不会触发运行中的生命周期
2.不在componentWillMount发起网络请求原因:
- 16.3版本 同步渲染 ->异步渲染(fiber)
- 渲染前的生命周期可以能会被意外情况打断,生命周期会重新执行
- 这该生命周期放网络请求 会导致请求的多次发出。
3.componentDidMount
- 表示组件挂载结束。
- .有dom 有数据 。
- 做网络请求 做初始化的操作 初始化swiper better-scroll。
- 数据的修改不能直接引起页面的改变 需要通过setState。
- 数据的修改会触发运行中的生命期。
4.shouldComponentUpdate
- 表示组件的数据改变触发。
- 该生命周期控制 数据修改是否要更新界面 通过该生命周期减少无关的页面更新。
- 返回 true 更新。
- 返回 false 不更新
- 参数 props 和state 将要更新的数据。
- this里的props和state 指的是还没更新的数据。
5.componentWillUpdate(传state参数)
- 表示组件更新之前触发。
- 数据 dom 元素都是更新之前, 也是在render前。
6.componentDidUpdate
- 在更新操作结束之后触发
- 数据和dom 都是修改之后的
- 注意! 小心在这里做数据跟新的操作
7.componentWillReceiveProps(传props参数)
- 监听props 发生改变
- 参数里是更新之后的数据
- this 里是更新之前的数据
8.componentWillUnmount
- 表示组件销毁