firebase Firestore:set()和add()的区别

z9gpfhce  于 2023-06-24  发布在  其他
关注(0)|答案(3)|浏览(133)

set()add()在Firestore中有什么区别?
我使用set()将文档添加到收藏中。但我无法使用add()或从文档中理解add()

w41d8nur

w41d8nur1#

由于您没有指定,我将假设您的意思是DocumentReference上的set(),CollectionReference上的add()。
当您在DocumentReference上使用set()时,您正在将数据放入一个文档中,您已经通过一些唯一的ID进行了识别。(否则,您不会已经有DocumentReference对象!)正如文档中所说的,“如果文档还不存在,它将被创建。”如果文档已经存在,那么您将替换或合并新数据到其中。
当您在CollectionReference上使用add()时,您将无条件地在集合中创建一个新文档,并且该新文档将具有分配给它的唯一id。您传递的数据将成为新文档的内容。

pqwbnv8z

pqwbnv8z2#

set()创建或覆盖单个文档&&您可以选择为要创建的文档指定ID
add()自动生成单据并自动赋予单据ID
更多信息-官方文档:https://firebase.google.com/docs/firestore/manage-data/add-data

wwwo4jvm

wwwo4jvm3#

在集合ref上调用add(),从而创建一个新文档。
set()在文档ref上被调用,因此如果具有相同ref的文档已经存在,则它将被覆盖;否则创建新文档。

相关问题