如何在将新文档添加到Firestore时保存文档ID?

19 浏览
0 Comments

如何在将新文档添加到Firestore时保存文档ID?

我想要向Firestore添加一个新的文档,并且在该文档内保存其ID作为属性:

await FirebaseFirestore.instance.collection("exmapleCollection").add({

// 更多键值对

"id": /* 在这里我想要设置自动生成的文档ID */

有什么想法吗?

注意:我不想设置一个硬编码的ID,我想要获取Firestore自动生成的ID并将其设置进去。

0
0 Comments

问题的原因是在将新文档添加到Firestore时,需要保存文档的ID。在上述示例中,文档ID是通过打印输出或作为函数返回值来获取的。然而,在添加文档后立即获取文档ID可能会导致问题,因为Firestore写入是异步的,可能需要一些时间才能完成。

为了解决这个问题,可以使用异步操作来等待文档写入完成,然后再获取文档ID。在第一个示例中,可以使用.then()方法来等待添加操作完成,并在回调函数中获取文档ID。在第二个示例中,使用async/await来等待添加操作完成,并使用try/catch块来处理任何错误。

要在添加新文档到Firestore时保存文档ID,可以使用异步操作来等待文档写入完成,然后再获取文档ID。

0