Greita API paieška kasdieniam darbui.
Šis puslapis apibendrina dažniausiai naudojamas klases ir metodus iš miniriverpod_core.dart ir miniriverpod_flutter.dart.
Pagrindiniai tipai
Pagrindinė būsena ir providerių primityvai.
AsyncValue<T>
AsyncLoading / AsyncData / AsyncError
Provider<T>
Sinchroninis provideris su pasirinktiniu autoDispose
AsyncProvider<T>
Asinchroninis provideris su .future selektoriumi
Skaitymo patarimas
AsyncValue neturi when metodo; naudokite switch pattern matching arba is patikras.
Ref ir ProviderContainer metodai
Dažniausiai naudojami metodai atnaujinimui, invalidavimui, gyvavimo ciklui ir mutacijų vykdymui.
Dažna seka
Metodų žemėlapis
read / watch / listen : skaityti ir prenumeruoti providerius.
invalidate / refresh / refreshValue : perskaičiuoti būseną.
onDispose / keepAlive / emit : gyvavimo ciklo ir srauto susiejimas.
mutation / mutate / invoke : sekamos rašymo operacijos.
scope / overrideWithValue : DI ir testavimo perrašymai.
Flutter API apžvalga
Programos kode naudojami ProviderScope ir WidgetRef įėjimo taškai.
// Sritis
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');
}
}
// Mutacijos vykdymas
await ref.invoke(userProvider.rename('Alice'));
ProviderScope(container: external) reikalauja rankiniu būdu iškviesti container.dispose().
UncontrolledProviderScope niekada nenaikina įterpto container.
Palaikomi Consumer, ConsumerWidget ir ConsumerStatefulWidget.
Kiti žingsniai
Provideriai
Grįžkite prie praktinio Provider, AsyncProvider ir read API naudojimo.
Atidaryti providerius