无需代码生成
编写标准 Dart 类与 provider,无需 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下一页
安装