【发布时间】:2020-09-21 15:13:16
【问题描述】:
我的根集合 tradeRequests 中有一个名为 requests 的子集合
我想使用 firebase 中的事务查询我的 requests 子集合
下面的代码将失败,因为Transaction.get() requires its first argument to be a DocumentReference
const getOne = (itemID) => db.runTransaction(async (transaction) => {
const tradeRequestItemRef = tradeRequestsRef.doc(itemID);
const requestsRef = tradeRequestItemRef.collection('requests');
const rawTradeRequestItem = await transaction.get(tradeRequestItemRef);
if (!rawTradeRequestItem) return null;
// something like this ???
// But this line will break everything
// Error: Transaction.get() requires its first argument to be a DocumentReference
const rawRequests = transaction.get(requestsRef);
return {
...normalizeData(rawTradeRequestItem),
requests: normalizeData(rawRequests),
};
});
【问题讨论】:
标签: javascript database firebase google-cloud-firestore