我想从 Firebase 中的子集合中获取特定数据,并将其仅复制一次(因此没有流)到另一个集合。我该如何修复代码才能使其正常工作?也许我需要使用 getDocuments() 进行一些更改,但我不知道如何进行这项工作。感谢您的帮助。
void copy() async {
await _firestore
.collection('users')
.document(loggedinUser.uid)
.collection('Dates')
.document(yesterdayDate)
.collection(widget.reference)
.getDocuments().then((QuerySnapshot snapshot) {snapshot.documents.forEach((message) {
final getitem = message.data['item'];
final getarchieved = message.data['archived'];
final getchecked = message.data['checked'];}) {
if (getchecked == false && widget.reference == 'Todo') {
_firestore
.collection('users')
.document(loggedinUser.uid)
.collection('Dates')
.document(selectedDate)
.collection(widget.reference)
.add({
'item': getitem,
'archived': getarchieved,
'checked': getchecked
});
} else if (widget.reference == 'Goals') {
_firestore
.collection('users')
.document(loggedinUser.uid)
.collection('Dates')
.document(selectedDate)
.collection(widget.reference)
.add({
'item': getitem,
'archived': getarchieved,
'checked': false
});
}
}
}
Run Code Online (Sandbox Code Playgroud)