Flutter-何时与setState()一起使用mounted



我理解根据文档

在什么情况下,我需要将setState()mounted一起使用?什么时候我不应该?下面给出两个例子:

onChanged: (value) {
setState(() {
valueOld = value
});
},
if(mounted){
setState(() {
valueOld = value
});
}

有人能给我指路吗?非常感谢!谢谢:D

mounted属性是true,当创建了与BuildContext相关联的对象State并调用了initState时。

这就是为什么如果你想在initState之前使用setState((){ if(mounted) // TODO}),你必须测试State是否是mounted,以确保已经创建了Context(状态(。

在其他情况下,可以在不使用mounted的情况下使用setState((){ // TODO}),因为对象State被挂载一次。

相关内容

  • 没有找到相关文章

最新更新