簡體   English   中英

如何在 Google Firestore 中獲取當前登錄用戶的文檔

[英]How to get document by current signed in user in Google Firestore

我正在嘗試獲取用戶注冊時創建的特定文檔。 我這樣做是為了在用戶注冊時,他們的 firebase 用戶 ID 是文檔的名稱。

我似乎無法弄清楚如何調用該文件。

我試過:firebase.auth().currentUser.uid; uid userId(來自計算)和其他幾個與 uid 相關的東西。

當我在網上尋找解決方案時,我看到了我嘗試過的確切示例,我想知道 uid 的工作方式是否發生了變化?

<script>
// eslint-disable-next-line
import firebase from "firebase";
// eslint-disable-next-line
import firestore from "firestore";
import db from "@/components/fbInit";

export default {
  components: {},
  data() {
    return {
      users: []
    };
  },
  computed: {
    userId() {
      return firebase.auth().currentUser.uid;
    }
  },
  created() {
    db.collection("userProfiles")
       .document(userId)
       .get()
       .then(querySnapshot => {
         querySnapshot.forEach(doc => {
          const data = {
            id: doc.id,
            name: doc.data().name,
            company: doc.data().company,
            state: doc.data().state
          };
          this.users.push(data);
         });
      });
  }
};
 </script>

通常我不會收到任何錯誤,但它不會加載任何文檔。 有時它會說“uid”或者我試圖使用的任何東西都是未定義的。

這是其他任何想知道的人的解決方案。 unique 是我在創建用戶時設置為匹配用戶 ID 的字段。 或者我相信你可以使用 author 來獲取文檔的作者。

var user =  firebase.auth().currentUser


db.collection("userProfiles").where('unique', '==', user.uid).get()
  .then(querySnapshot => {
    querySnapshot.forEach(doc => { }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM