想知道什么(如果有的话)标准/最佳实践方法是用于处理失败/部分数据上传到 Firestore 数据库。
例如,假设用户需要通过类似的方式上传到两个不同的集合
let res = undefined
let docID = firebase.auth().currentUser.uid
try {
res = await firebase.firestore().collection('someCollection')
.doc(docID)
.set(someData)
} catch (error) { console.error(`Some message ${res}`) }
try {
res = await firebase.firestore().collection('someOtherCollection')
.doc(docID)
.set(someOtherData)
} catch (error) { console.error(`Some message ${res}`) }
并且无论出于何种原因,程序成功写入 someCollection,但没有写入 someOtherCollection。这应该如何处理?我们应该尝试回滚已写入的内容(通过 catch 块)还是等到上传尝试结束并向文档添加/上传一个附加标志,并且仅在具有此标志的情况下将数据视为将来有效?还有什么?
** 意识到这与一些要避免的问题很接近,但在这种情况下,我专门询问 Firestore API(例如,firestore()API 中专门用于处理这些情况的任何函数/对象)和最佳实践(如果有任何在更广阔的世界(使用 Firebase / Firestore 的新手))。