Hurtig API-reference til dagligt arbejde.
Denne side sammenfatter de mest brugte klasser og metoder fra miniriverpod_core.dart og miniriverpod_flutter.dart.
Kernetyper
I stedet for genererede family-klasser og implicitte notifier-kanaler foretrækker miniriverpod subclass + args og eksplicit invoke.
Provider-identitet
runtimeType + args hash
Alternativ til family
Subklassér Provider / AsyncProvider, og brug super.args((...)).
DI-fallback
Scope<T>.required + overrideWithValue
Hvorfor det betyder noget
Du kan ræsonnere om lighed og overrides ud fra almindelige Dart-konstruktører, hvilket gør fejlsøgning og tests ligetil.
Ref- og ProviderContainer-metoder
Almindelige driftsmetoder til refresh, invalidering, livscyklus og eksekvering af mutationer.
Typiske kald
Metodeoversigt
read / watch / listen : læs og abonner på providers.
invalidate / refresh / refreshValue : genberegn tilstanden.
onDispose / keepAlive / emit : livscyklus og Stream-tilkobling.
mutation / mutate / invoke : sporede skriveoperationer.
scope / overrideWithValue : DI og test-overrides.
Flutter API-oversigt
Indgangspunkterne ProviderScope og WidgetRef, som bruges i app-kode.
// 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');
}
}
// Eksekvering af mutation
await ref.invoke(userProvider.rename('Alice'));
Næste skridt
Provider og AsyncProvider
Se konkrete mønstre for watch/read/listen og AsyncProvider.future.
Åbn Providers