Я бы сказал, что это просто соглашение .Вышеприведенное может быть переписано как
readLocal() async {
prefs = await SharedPreferences.getInstance();
setState(() {
id = prefs.getString('id') ?? '';
if (id.hashCode <= peerId.hashCode) {
groupChatId = '$id-$peerId';
} else {
groupChatId = '$peerId-$id';
}
});
}
Оба будут делать то же самое.Вызов setState(() {})
после изменения state variable
выглядит аккуратным и пригодным для повторения.
В соответствии с реализацией секции setState
, он будет располагаться ниже по порядку.
- утверждения.Если какое-либо утверждение завершается неудачно, выдает исключение и останавливается там.
- Выполните функцию обратного вызова (
final dynamic result = fn() as dynamic;
) - Попросите фреймворк восстановить (
_element.markNeedsBuild();
)