如何解决如何在Sembast记录中的映射内监听单个值?
文档讨论了监听记录,但是如何监听记录中的单个字段?假设记录包含地图。
class User {
final String uid; // used as key in Sembast
final String name;
bool isverified;
/// Used to store data to Sembast
Map<String,dynamic> toMap() => {
'uid': uid,'name': name,'isverified': isverified,};
}
当我将其保存在本地时,
final _store = stringMapStoreFactory.store('userStore');
// Store data:
await _store.record(user.uid).put(database,user.toMap());
然后我要在页面中的某处收听isverified
字段的更改,而无需获取整个User
信息。我该怎么办?
因为_store.record(user.uid).onSnapshot(database)
返回该Stream<RecordSnapshot>
类的全部数据中的User
。
谢谢
解决方法
类似于firestore,您只能侦听整个记录更改(或存储中的查询),而不能侦听记录中的单个字段更改。附带说明,获取“完整”记录并不昂贵,因为该记录已准备好在内存中使用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。