ស្វែងរក API រហ័សសម្រាប់ការងារប្រចាំថ្ងៃ។

ទំព័រនេះសង្ខេប class និង method ដែលប្រើជាញឹកញាប់ពី miniriverpod_core.dart និង miniriverpod_flutter.dart។

ប្រភេទមូលដ្ឋាន

ស្ថានភាពស្នូល និង primitive របស់ provider។

AsyncValue<T>

AsyncLoading / AsyncData / AsyncError

Provider<T>

Provider សមកាលកម្មជាមួយ autoDispose ជាជម្រើស

AsyncProvider<T>

Provider អសមកាលកម្មជាមួយ selector .future

គន្លឹះអាន

AsyncValue មិនមាន method when ទេ; ប្រើ switch pattern matching ឬ is checks។

Method របស់ Ref និង ProviderContainer

វិធីសាស្ត្រប្រតិបត្តិទូទៅសម្រាប់ refresh, invalidation, lifecycle, និងការប្រតិបត្តិ mutation។

លំដាប់ប្រើប្រាស់ទូទៅ

ផែនទី Method

read / watch / listen                 : អាន និង subscribe ទៅ provider។
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');
  }
}

// ប្រតិបត្តិ mutation
await ref.invoke(userProvider.rename('Alice'));
ProviderScope(container: external) ត្រូវការហៅ container.dispose() ដោយដៃ។
UncontrolledProviderScope មិនដែល dispose container ដែលបាន inject ទេ។
Consumer, ConsumerWidget, និង ConsumerStatefulWidget ទាំងអស់ត្រូវបានគាំទ្រ។

ជំហានបន្ទាប់

Providers

ត្រឡប់ទៅការប្រើប្រាស់ជាក់ស្តែងរបស់ Provider, AsyncProvider, និង read API។

បើក Providers

Mutations

អនុវត្តលំហូរសរសេរច្បាស់លាស់ជាមួយការគ្រប់គ្រង concurrency។

បើក Mutations