Rychlé vyhledání API pro každodenní práci.
Tato stránka shrnuje běžně používané třídy a metody z miniriverpod_core.dart a miniriverpod_flutter.dart.
Základní typy
Základní stav a providerová primitiva.
AsyncValue<T>
AsyncLoading / AsyncData / AsyncError
Provider<T>
Synchronní provider s volitelným autoDispose
AsyncProvider<T>
Asynchronní provider se selektorem .future
Tip ke čtení
AsyncValue neobsahuje metodu when; použijte pattern matching ve switchi nebo kontroly přes is.
Metody Ref a ProviderContainer
Běžné provozní metody pro obnovu, zneplatnění, životní cyklus a provádění mutací.
Běžný postup
Mapa metod
read / watch / listen : čtení a odběr providerů.
invalidate / refresh / refreshValue : přepočítají stav.
onDispose / keepAlive / emit : životní cyklus a napojení streamu.
mutation / mutate / invoke : sledované operace zápisu.
scope / overrideWithValue : DI a přepsání pro testy.
Přehled Flutter API
Vstupní body ProviderScope a WidgetRef používané v kódu aplikace.
// 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');
}
}
// Spuštění mutace
await ref.invoke(userProvider.rename('Alice'));
ProviderScope(container: external) vyžaduje ruční volání container.dispose().
UncontrolledProviderScope nikdy neukončuje vložený container.
Consumer, ConsumerWidget i ConsumerStatefulWidget jsou podporované.