Comments 2
На данный момент анонимный обратный вызов является устоявшейся традицией, и все остальное кажется странным.
Колбэк несет в себе полезную информацию другим разработчикам: становится гораздо понятнее, зачем именно здесь нужен setState()
.
Как раз, чтобы не гадать, был ли он вызван "как талисман на удачу", или его забыли удалить после рефакторинга, или он действительно делает что-то полезное, помещайте туда причину вызова, такой формат сразу всё объясняет:
setState(() {
_value = newValue;
});
Поэтому в документации и пишут:
Generally it is recommended that the setState method only be used to wrap the actual changes to the state, not any computation that might be associated with the change.
И поэтому в DCM есть правило в тему.
Это только вершина айсберга. Еще месяца через 4 вы возможно поймете как устроен жизненый цикл виджетов, узнаете что на самом деле представляет из себя контекст и может даже погрузитесь в то как связаны между собой виджеты, элементы и рендеробжекты. Поиграетесь с инхерит виджетами, стримами и изолятами. А через год другой будете ломать голову над тем какие архитектуры использовать в том или ином проекте и может даже напишите свой кастомный роутер на навигаторе 2.0). Ну по крайней мере у меня так..
Метод setState() во Flutter может работать не так, как вы это представляете