从Firestore的transaction.set()方法中获取新文档的ID,可以通过以下步骤实现:
下面是一个示例代码:
const transaction = db.runTransaction(async (transaction) => {
const docRef = db.collection('your_collection').doc(); // 创建一个新文档,不传入文档ID
const data = { /* 设置的数据 */ };
transaction.set(docRef, data);
// 在回调函数中获取新文档的ID
transaction.get(docRef).then((doc) => {
const newDocId = doc.id;
console.log('New document ID:', newDocId);
});
});
在上述示例中,我们使用Firestore的runTransaction()方法创建一个事务,并在事务中使用transaction.set()方法创建一个新文档。然后,在transaction.set()方法的回调函数中,使用transaction.get()方法获取新文档的数据,并从中提取出文档的ID。
注意:以上示例代码中的db
是Firestore数据库的实例,your_collection
是要操作的集合名称,你需要根据实际情况进行替换。
推荐的腾讯云相关产品:腾讯云云数据库 Firestore,产品介绍链接地址:https://cloud.tencent.com/product/tcfd
领取专属 10元无门槛券
手把手带您无忧上云