flutter_riverpod
一个响应式缓存和数据绑定框架。Riverpod 让处理异步代码变得轻而易举。
一个响应式缓存和数据绑定框架。Riverpod 让处理异步代码变得轻而易举。
以下为英文项目原文快照,最新内容请访问 GitHub。
A reactive caching and data-binding framework. https://riverpod.dev Riverpod makes working with asynchronous code a breeze by:
| riverpod | |
|---|---|
| flutter_riverpod | |
| hooks_riverpod |
Welcome to Riverpod (anagram of Provider)!
For learning how to use Riverpod, see its documentation: >>> https://riverpod.dev <<<
Long story short:
Define network requests by writing a function annotated with @riverpod:
@riverpod
Future<String> boredSuggestion(Ref ref) async {
final response = await http.get(
Uri.https('boredapi.com', '/api/activity'),
);
final json = jsonDecode(response.body);
return json['activity']! as String;
}
Listen to the network request in your UI and gracefully handle loading/error states.
class Home extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final boredSuggestion = ref.watch(boredSuggestionProvider);
// Perform a switch-case on the result to handle loading/error states
return switch (boredSuggestion) {
AsyncData(:final value) => Text('data: $value'),
AsyncError(:final error) => Text('error: $error'),
_ => const Text('loading'),
};
}
}
Contributions are welcome!
Here is a curated list of how you can help:
一个响应式缓存和数据绑定框架。Riverpod 让处理异步代码变得轻而易举。
一个响应式缓存和数据绑定框架。Riverpod 让处理异步代码变得轻而易举。
一个响应式缓存和数据绑定框架。Riverpod 让处理异步代码变得轻而易举。
一个为 riverpod_generator 暴露注解的包
Riverpod 的代码生成器。它既简化了语法,又增强了功能,例如支持有状态热重载。
先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗