mounted

https://cloud.tencent.com/developer/article/1188468

2. mounted is true

当这个Widget调用createState 后, 会将buildContext 传入。 BuildContext 内有自己在widget tree上相关的信息。

所有的widgets 都有 bool this.mounted 这个属性. 当BuildContext传入时,它将会被标记成 true。如果这个属性不是true的话,调用setState会报错。 

注意:你可以在调用setState前,检查一下这个变量。

if (mounted) {...` to make sure the State exists before calling `setState()

3 . initState()

这个方法只会调用一次,在这个Widget被创建之后。它必须调用super.initState().

在这里可以做:

初始化根据对应BuildContext的状态

初始化根据在树上的父节点的属性确定的值

注册Streams ChangeNotifiers或者其他会改变的数据的监听。

猜你喜欢

转载自www.cnblogs.com/pythonClub/p/10828719.html