Возможно управление полным жизненным циклом объекта с помощью Provider
:
Provider<LocalStorageManager>(
create: (context) => LocalStorageManager(),
dispose: (context, obj) => obj.dispose(),
),
Однако, если объект должен быть асинхронно инициализирован, мы должны использовать FutureProvider
:
FutureProvider<LocalStorageManager>(
create: (context) async => await LocalStorageManager().initialize(),
),
Если FutureProvider
не имеет обратного вызова dispose
, как мне распоряжаться LocalStorageManager
?
Кроме того, в чем разница с FutureProvider.value
, если жизненный цикл не управляется?