【问题标题】:firestore Error: Argument "documentPath" must point to a documentfirestore 错误:参数“documentPath”必须指向一个文档
【发布时间】:2018-09-26 11:54:42
【问题描述】:

我使用 firebase/firestore 构建 react native 应用程序,但出现错误

Error: Argument "documentPath" must point to a document.

当我写下这一行时

    var userStatusFirestoreRef = firebase.firestore().doc('/status/' + uid);

所有代码

    firebase.auth().signInAnonymouslyAndRetrieveData().then((user) => {
    var uid = firebase.auth().currentUser.uid;

    var userStatusFirestoreRef = firebase.firestore().doc('/status/' + uid);
});

【问题讨论】:

  • console.log 时uid 的值是多少?
  • 值是我的 uid 'Nqc413xxxxxxxxxxxxxxx'
  • 你可能想试试firebase.firestore().collection('status').doc(uid)。让我知道这是否有帮助。
  • 是的,那样也不错。谢谢
  • 看起来我们无法在根级别创建文档。

标签: firebase react-native google-cloud-firestore


【解决方案1】:

您应该为 firestore 路径的每个段链接 collection()doc() 方法,例如:

firebase.firestore().collection('status').doc(uid)

您可以将这些链接到您的子集合和子文档中。

firebase.firestore().collection('status').doc(uid).collection('messages').doc('messageId')

【讨论】:

    【解决方案2】:

    更新:现在您不能在文档名称中添加正斜杠“/”,它会引发错误:

    firebase.firestore().collection().doc(*) 'document path' 必须指向一个文档

    【讨论】:

      【解决方案3】:

      我发现了错误, 应该是

          var userStatusFirestoreRef = firebase.firestore().doc('status/' + uid);
      

      'status/' 末尾有一个'/'

      【讨论】:

        【解决方案4】:

        有时会发生,因为我们忘记写 collection() 参考

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-08-27
          • 1970-01-01
          • 2018-04-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多