Ҳалли сабуки идоракунии ҳолат барои Flutter.

Қувваи меъмории реактивии Riverpod-ро бе мураккабии code generation ё вобастагиҳои калон эҳсос кунед.

Бе Code Gen

Классҳо ва Provider-и стандартии Dart нависед. build_runner лозим нест.

Сабук

Камтар аз 50KB. Барои барномаҳои ба иҷроиш ҳассос беҳтарин.

Built-in Concurrency

Илҳом аз синтаксиси зебои хониши ҳолати Riverpod гирифта шудааст.

Қадамҳои аввал

Биомӯзед, ки чӣ гуна miniriverpod-ро дар лоиҳаи Flutter дар чанд дақиқа пайваст кунед.

Насб

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

Баръакси Riverpod-и аслӣ, Provider + AsyncProvider + WidgetRef махсус барои Flutter равона шудааст ва лоиҳаҳои Dart-и мустақилро дастгирӣ намекунад. Ин имкон дод 70% мантиқҳои дохилиро барои беҳтар кардани иҷроиш ҳазф кунем.

Қаблӣ

Open Source

Баъдӣ

Насб