我有ScopedModel,它与FireStore集成在一起。 每当我在FireStore中添加或更新记录时,都会刷新并每次在模型中添加重复的值。 如何在FireStore重新加载现有值之前将其删除。
ScopedModel-用于加载初始值
Firestore.instance
.collection('categoryMaster')
//.where('isActive', isEqualTo: true)
.orderBy('categoryCode')
.snapshots()
.listen((data) {
data.documents.forEach((doc) {
finalData.add(Category.map(doc));
});
}).asFuture();
尝试更新子类中的值,再次更新后,在模型中添加了相同的值。例如,如果我在更新后在同一个列表[a,b,c,d,e,a,b,c,d,e]中又添加了5个值,则我有5条记录为[a,b,c,d,e]
Firestore.instance.collection('categoryMaster')
.document(category[index].field1)
.updateData({
"isActive": category[index].isActive
? false
: true
}).whenComplete(() {
setState(() {
print(category.length);
});
}).catchError((e) {
print(e);
});
如何避免模型中出现重复值?