stream_provider_cache
一个简单的 Flutter 应用程序,用于演示 StreamProvider 与 SharedPreferences 的结合使用,以缓存 provider 的值。
特点
- Stream Provider 缓存。
- 能够通过 shared preference 键触发刷新。
- 用于访问和更新 provider 的通用方法。
- 用于访问和更新 shared preferences 的通用方法。
缓存过程
- 从缓存中获取 provider 的值。
- 从最后一个缓存的项开始添加新项。
- 如果没有缓存的项,则从头开始添加新项。
- 将项缓存到 shared preferences 中。
- 根据搜索 provider 的值过滤项。
- 返回已过滤的项列表。
注意事项
需要缓存的数据模型必须实现以下方法,才能序列化和反序列化模型。
Map<String, dynamic> toJson()Object.fromJson(Map<String, dynamic> json)
当使用带有多个参数的 provider families 时,用作 provider 参数的模型需要实现以下方法,以便 riverpod 能够区分不同的 provider 实例,请查看 grid_item.dart 文件中的 `GridItemsProviderArgs` 实现。
bool operator ==(Object other)int get hasCode
依赖项
- flutter_riverpod
- shared_preference
- easy_search_bar
目录结构
lib
└── src
├── models
├── pages
├── services
├── utils
└── widgets
预览
主页 |
网格页 |
详情页 |


