Suluhisho nyepesi la usimamizi wa hali kwa Flutter.

Pata nguvu ya usanifu wa Riverpod wa mmenyuko bila ugumu wa kizalishaji cha msimbo au utegemezi mkubwa.

Hakuna Code Gen

Andika madarasa ya kawaida ya Dart na providers. Hakuna build_runner inayohitajika.

Nyepesi

Chini ya 50KB. Inafaa kwa programu zinazohitaji utendaji wa juu.

Built-in Concurrency

Imechochewa moja kwa moja na sintaksia ya Riverpod ya kusoma hali.

Hatua za Kwanza

Jifunze jinsi ya kuingiza miniriverpod kwenye mradi wako wa Flutter kwa dakika chache.

Usakinishaji

flutter pub add miniriverpod

Mutation + Invoke

lib/main.dart
class UserProvider extends AsyncProvider<User?> {
  UserProvider() : super.args(null);

  late final renameMut = mutation<void>(#rename);

  Call<void, AsyncValue<User?>> rename(String name) => mutate(
    renameMut,
    (ref) async {
      final api = ref.watch(apiProvider);
      await api.rename(name);
      ref.state = AsyncData(await api.me());
    },
    concurrency: Concurrency.restart,
  );
}

// UI
await ref.invoke(userProvider.rename('Alice'));
Compatibility Note

Tofauti na Riverpod asili, Provider + AsyncProvider + WidgetRef inalenga hasa programu za Flutter na haiungi mkono miradi ya Dart pekee. Hii ilituruhusu kupunguza 70% ya mantiki ya ndani kwa utendaji bora.