目录标题
1 生命周期
-------------------------------------- 1 挂载阶段 --------------------------------------------
1 constructor()
// 组件的创建到销毁, 只执行一次
// 所有生命周期中, 第一个执行
// 内部不可以使用this.setState()方法
2 render()
// 组件的创建到销毁, 可执行多次 --- [ 在装载阶段和更新阶段都会执行 ]
// 用于定于组件视图, 必须有 return 返回值, 且返回 JSX 元素对象
// 该函数中不可使用 this.setState()方法
3 componentDidMount()
// 组件的创建到销毁, 只执行一次
// 我们经常在此处 -- 触发调接口, 开启定时器, 长链接, DOM操作等等
-------------------------------------- 2 更新阶段 --------------------------------------------
1 componentDidUpdate() // 不常用
// 相当于是 Vue中的 updated(), 它表示视图更新已完成
// 该函数中不可使用 this.setState()方法
// 主要作用就是, 性能优化, 抽离处不参与视图渲染的变量, 让他们不执行diff运算
2 shouldComponentUpdate() // 不常用
// 它是一个开关, 用于控制组件的更新
// 这个生命周期一定要返回一个布尔值, 返回 false时, 更新失败
-------------------------------------- 3 卸载阶段 --------------------------------------------
1 componentWillUnmount()
// 相当于是 Vue中的 beforeDestroy()
// 在这里一般做清除定时器, 长连接, 清除状态管理的缓存