首页 > 解决方案 > firebase 中的 merge 和 timestampsInSnapshot 是什么?

问题描述

我在控制台收到此错误;“您正在覆盖原始主机。如果您不打算覆盖您的设置,请使用 {merge: true}。” 当我添加此代码行时,它已解决

db.settings({ timestampsInSnapshot: true, merge: true });

注意:timeInSnapshot 设置与上述错误无关。只是我问这是什么意思?而且我没有写任何其他代码。

标签: firebase

解决方案


这似乎不是错误,而是警告。

在此处输入图像描述

根据版本 8.6.3 发行说明

settings()Firestore 将在用于覆盖host未设置的原始值时抛出警告消息{merge: true}

您还可以查看Firestore 设置文档以更好地了解和的host用法merge

  • host: 要连接的主机名。
  • merge:是否将提供的设置与现有设置合并。如果设置为 true,则设置将与现有设置合并。如果设置为 false 或未设置,这些设置将替换现有设置。

因此,即使您没有在该调用中明确设置它,似乎如果没有设置merge: true,您也会覆盖。host


推荐阅读