ਰੋਜ਼ਾਨਾ ਕੰਮ ਲਈ ਤੇਜ਼ API ਹਵਾਲਾ।

ਇਹ ਪੇਜ miniriverpod_core.dart ਅਤੇ miniriverpod_flutter.dart ਦੀਆਂ ਆਮ ਵਰਤੀਆਂ ਜਾਣ ਵਾਲੀਆਂ ਕਲਾਸਾਂ ਅਤੇ ਵਿਧੀਆਂ ਦਾ ਸਾਰ ਦਿੰਦਾ ਹੈ।

ਮੁੱਖ ਕਿਸਮਾਂ

ਕੋਰ state ਅਤੇ provider primitives।

AsyncValue<T>

AsyncLoading / AsyncData / AsyncError

Provider<T>

ਵਿਕਲਪਿਕ autoDispose ਵਾਲਾ ਸਿੰਕ੍ਰੋਨਸ provider

AsyncProvider<T>

ਅਸਿੰਕ੍ਰੋਨਸ provider ਜਿਸ ਵਿੱਚ .future selector ਹੈ।

ਪੜ੍ਹਨ ਲਈ ਸੁਝਾਅ

AsyncValue ਵਿੱਚ when ਮੈਥਡ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ; switch pattern matching ਜਾਂ is checks ਵਰਤੋ।

Ref ਅਤੇ ProviderContainer ਵਿਧੀਆਂ

refresh, invalidation, lifecycle, ਅਤੇ mutation execution ਲਈ ਆਮ ਕਾਰਜਵਾਈ ਵਿਧੀਆਂ।

ਆਮ ਕ੍ਰਮ

ਵਿਧੀ ਨਕਸ਼ਾ

read / watch / listen                 : providers ਨੂੰ ਪੜ੍ਹੋ ਅਤੇ subscribe ਕਰੋ।
invalidate / refresh / refreshValue    : state ਨੂੰ ਦੁਬਾਰਾ ਗਣਨਾ ਕਰੋ।
onDispose / keepAlive / emit           : lifecycle ਅਤੇ stream wiring.
mutation / mutate / invoke             : ਟ੍ਰੈਕ ਕੀਤੀਆਂ ਲਿਖਣ ਵਾਲੀਆਂ ਕਾਰਵਾਈਆਂ.
scope / overrideWithValue              : DI ਅਤੇ testing overrides.

Flutter API ਝਲਕ

ਐਪ ਕੋਡ ਵਿੱਚ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ProviderScope ਅਤੇ WidgetRef ਦੇ ਮੁੱਖ entry points.

// ਸਕੋਪ
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 injected container ਨੂੰ ਕਦੇ dispose ਨਹੀਂ ਕਰਦਾ।
Consumer, ConsumerWidget, ਅਤੇ ConsumerStatefulWidget ਸਭ ਸਮਰਥਿਤ ਹਨ।

ਅਗਲੇ ਕਦਮ

Providers

Provider, AsyncProvider, ਅਤੇ read APIs ਦੀ ਅਮਲੀ ਵਰਤੋਂ ਵੱਲ ਵਾਪਸ ਜਾਓ।

Providers ਖੋਲ੍ਹੋ

Mutations

ਸਪਸ਼ਟ write flows ਨੂੰ concurrency control ਨਾਲ ਲਾਗੂ ਕਰੋ।

Mutations ਖੋਲ੍ਹੋ