把需要更新的值放在setState里面和放在外面有什么区别?
setState(() {
_counter++;
});和
_counter++;
setState(() {});发布于 2020-07-28 01:57:40
假设您知道setState做了什么,它不是相同的,但它做的事情与您的情况相同您通知框架此对象的内部状态在更改对象内部状态后发生了更改,但如果您将其用作
setState(() {});
_counter++;如果你的函数花费了很多时间,你可能会得到意想不到的结果,因为setState不会做任何事情
例如,试着这样做
setState(() {});
await Future.delayed(Duration(milliseconds: 500));
_counter++;因此,它依赖于函数、时间和位置(在setState之前或之后)。但是,最好将值放在setState中以避免意外行为,据我所知,这是使用setState的最佳实践。
https://stackoverflow.com/questions/63120139
复制相似问题