logo

FutureBuilder

flutter

widgets

`FutureBuilder` — это виджет во Flutter, который строит UI в зависимости от состояния `Future`. Это основной способ асинхронно загружать данные и отображать результат.

💡 Примечание:

Если `Future` — это обещание, что когда-то придут данные, `FutureBuilder` — это способ показать на экране, что происходит в ожидании и после получения данных.

Основные параметры

future (Future<T>)— обязательный

Асинхронная операция, результат которой будет использован для построения UI.

builder (AsyncWidgetBuilder<T>)— обязательный

Функция, возвращающая виджет на основе текущего состояния Future (`snapshot`).

initialData (T?)

Начальное значение до завершения Future. Может быть полезно для отображения предварительных данных.

Что такое AsyncSnapshot

Unknown block type
⚠️ Важно:

`FutureBuilder` пересоздаёт Future при каждом перестроении, если вы создаёте Future внутри build(). Лучше передавать готовый Future.

Сравнение: FutureBuilder vs setState

АспектFutureBuildersetState + Future
ИнкапсуляцияUI и логика в одном местеНужно управлять состоянием вручную
Повторное использованиеЛегко встраивается как компонентПодходит для более сложных сценариев
Обновление UIПроисходит автоматически при завершении FutureНужно вызывать вручную