Snabb API-uppslagning för vardagsarbete.

Den här sidan sammanfattar de vanligast använda klasserna och metoderna från miniriverpod_core.dart och miniriverpod_flutter.dart.

Grundtyper

Grundläggande byggblock för tillstånd och providers.

AsyncValue<T>

AsyncLoading / AsyncData / AsyncError

Provider<T>

Synkron provider med valfri autoDispose.

AsyncProvider<T>

Asynkron provider med .future-selektorn.

Tips

AsyncValue innehåller inte någon when-metod; använd switch-mönstermatchning eller `is`-kontroller.

Metoder för Ref och ProviderContainer

Vanliga driftmetoder för uppdatering, ogiltigförklaring, livscykel och körning av mutationer.

Vanlig ordning

Metodkarta

read / watch / listen                 : läs och prenumerera på providers.
invalidate / refresh / refreshValue    : räkna om tillståndet.
onDispose / keepAlive / emit           : livscykel och koppling av strömmar.
mutation / mutate / invoke             : spårade skrivoperationer.
scope / overrideWithValue              : DI och testöverskridanden.

Ögonblicksbild av Flutter-API:t

ProviderScope + WidgetRef-ingångspunkterna som används i appkoden.

// Scope
ProviderScope(
  child: const App(),
);

// ConsumerWidget
class Header extends ConsumerWidget {
  const Header({super.key});

  @override
  Widget build(BuildContext context, WidgetRef ref) {
    final user = ref.watch(currentUser);
    return Text('$user');
  }
}

// Mutation execution
await ref.invoke(userProvider.rename('Alice'));
ProviderScope(container: external) kräver manuell container.dispose().
UncontrolledProviderScope frigör aldrig den injicerade containern.
Consumer, ConsumerWidget och ConsumerStatefulWidget stöds alla.

Nästa steg

Providers

Gå tillbaka till praktisk användning av Provider, AsyncProvider och läs-API:er.

Öppna Providers

Mutations

Implementera explicita skrivflöden med kontroll över samtidighet.

Öppna Mutations