【发布时间】:2019-11-26 20:33:34
【问题描述】:
我今天才开始尝试 Flutter。我正在关注官方教程:https://flutter.dev/docs/development/ui/interactive(本题涉及步骤#3)
我了解Stateful Widgets 的概念和setState() 的必要性,但我不了解它的参数(函数)的意义。为什么我们要向它传递一个函数? setState 不能是无参数的,然后我们只需在调用 setState 之前放置状态更改代码(我们将放在该参数函数上)吗?
所以基本上我的问题是:有什么区别
A) setState(() { myCounter++; });
和
B) 我的计数器++; setState(() {} );
?
Obs:在我上面链接的教程中,如果我这样做,结果是(或似乎是)相同。
【问题讨论】:
-
this的可能重复项?
-
供以后参考,学习了Flutter一个月我还是不知道答案,看来你可以做任何一种方式,唯一的区别是在方法A setState 有一些检查,不会执行如果检查失败(无效状态等),则其中的代码,而 B 方法没有这些检查。此外,不是建议的重复,下面的单一答案也不适用于该问题(我知道我不应该用繁重的计算锁定主线程,问题与此无关)。
标签: flutter