Schneller API-Überblick für den Alltag.

Diese Seite fasst die häufig verwendeten Klassen und Methoden aus miniriverpod_core.dart und miniriverpod_flutter.dart zusammen.

Kern-Typen

Kernzustand und Provider-Grundbausteine.

AsyncValue<T>

AsyncLoading / AsyncData / AsyncError

Provider<T>

Synchroner Provider mit optionalem autoDispose

AsyncProvider<T>

Asynchroner Provider mit .future-Selektor

Lesetipp

AsyncValue enthält keine when-Methode; verwende switch-Pattern-Matching oder is-Prüfungen.

Methoden von Ref und ProviderContainer

Gängige Methoden für Aktualisierung, Invalidierung, Lebenszyklus und das Ausführen von Mutationen.

Typische Abfolge

Methodenübersicht

read / watch / listen                 : lesen und Provider abonnieren.
invalidate / refresh / refreshValue    : Zustand neu berechnen.
onDispose / keepAlive / emit           : Lebenszyklus und Stream-Anbindung.
mutation / mutate / invoke             : nachverfolgte Schreiboperationen.
scope / overrideWithValue              : DI- und Test-Overrides.

Flutter-API-Übersicht

ProviderScope und WidgetRef sind die Einstiegspunkte, die im App-Code verwendet werden.

// 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');
  }
}

// Ausführung der Mutation
await ref.invoke(userProvider.rename('Alice'));
Wenn du ProviderScope(container: external) verwendest, musst du container.dispose() manuell aufrufen.
UncontrolledProviderScope gibt den injizierten Container nie frei.
Consumer, ConsumerWidget und ConsumerStatefulWidget werden alle unterstützt.

Nächste Schritte

Provider

Zur praktischen Nutzung von Provider, AsyncProvider und den Read-APIs zurückkehren.

Provider öffnen

Mutationen

Explizite Schreibflüsse mit Kontrolle über die Parallelität implementieren.

Mutationen öffnen