1. 初始化阶段
- 构造函数:Widget被创建时调用,用于初始化实例变量。
- createState():创建State对象,并在此方法中初始化State的状态。
2. 挂载阶段
- initState():在State对象被插入树中时调用,可以在此方法中执行一些初始化操作。
- didChangeDependencies():在State对象依赖的对象发生变化时调用,例如Theme或MediaQuery。
3. 更新阶段
- didUpdateWidget():当父Widget重建时调用,可以比较新旧Props是否相同来执行一些操作。
- setState():当调用setState方法时触发Widget的重建。
4. 卸载阶段
- deactivate():当State对象从树中被移除时调用。
- dispose():在State对象被永久从树中移除时调用,可以在此方法中执行一些资源释放操作。
5. 错误处理阶段
- didCatchError():当子Widget出现错误并抛出异常时调用,在此方法中可以处理错误并返回一个替代性的Widget。