Өдөр тутмын ажилд зориулсан хурдан API хайлт.
Энэ хуудас miniriverpod_core.dart болон miniriverpod_flutter.dart-аас нийтлэг ашиглагддаг class болон method-уудыг нэгтгэн харуулна.
Үндсэн төрлүүд
Үндсэн state болон provider primitiv-үүд.
AsyncValue<T>
AsyncLoading / AsyncData / AsyncError
Provider<T>
Синхрон provider, autoDispose нь сонголттой
AsyncProvider<T>
.future selector бүхий асинхрон provider
Унших зөвлөгөө
AsyncValue нь when method-гүй; switch pattern matching эсвэл is шалгалтыг ашигла.
Ref болон ProviderContainer-ийн аргууд
Шинэчлэх, хүчингүй болгох, lifecycle, mutation гүйцэтгэлд зориулсан нийтлэг аргууд.
Нийтлэг дараалал
Аргуудын зураг
read / watch / listen : provider-уудыг уншиж, subscribe хийнэ.
invalidate / refresh / refreshValue : төлөвийг дахин тооцоолно.
onDispose / keepAlive / emit : lifecycle болон stream-ийг холбоно.
mutation / mutate / invoke : хянагдсан бичих үйлдлүүд.
scope / overrideWithValue : DI болон тестийн override-ууд.
Flutter API товч зураг
Програмын кодод ашиглагддаг ProviderScope болон WidgetRef орох цэгүүд.
// Хүрээ
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');
}
}
// Мутацын гүйцэтгэл
await ref.invoke(userProvider.rename('Alice'));
ProviderScope(container: external) ашиглахад container.dispose()-ийг гараар дуудна.
UncontrolledProviderScope нь inject хийсэн container-ийг хэзээ ч dispose хийхгүй.
Consumer, ConsumerWidget, ConsumerStatefulWidget бүгд дэмжигдэнэ.
Дараагийн алхмууд
Provider-ууд
Provider, AsyncProvider, read API-уудын практик хэрэглээнд буцаж ор.
Provider-уудыг нээх