【问题标题】:Firestore iOS DocumentSnapshot `createTime`Firestore iOS DocumentSnapshot `createTime`
【发布时间】:2020-08-19 20:11:44
【问题描述】:

我注意到 Firestore iOS SDK(可能还有许多其他平台)无权访问文档的 createTime 属性。

使用 node.js,我可以访问 DocumentSnapshotcreateTime 属性(在他们的 official document for node.js 中也没有提到)。

我的问题是,为什么 firebase 不让我们使用这个属性(或默默地让我们使用它),即使它在很多情况下都非常有用并且已经存在?

还有什么方法可以在 iOS 上使用这个属性?现在我必须手动保留与每个文档关联的额外字段(这听起来很愚蠢,因为知道 firestore 已经保留了一个属性)。

来自代码注释:

/**
 * The time the document was created. Not set for documents that don't
 * exist.
 */
readonly createTime?: Timestamp;

【问题讨论】:

    标签: ios node.js firebase google-cloud-firestore


    【解决方案1】:

    与大多数未通过公共 API 公开的细节一样,您应该将隐藏的值视为未来可能发生变化的实现细节。如果您依赖它或尝试以任何方式使用它,您的应用程序将来可能会崩溃。至于为什么隐藏起来,只有系统的设计者才能确定。但是您可以确定,如果它没有在 API 中公开,他们根本不打算让您使用它。

    您可以做的只是创建自己的时间戳字段,并在创建文档时为其指定所需的值。这很常见。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-26
      • 2021-01-10
      • 2018-07-07
      • 1970-01-01
      • 2018-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多