簡體   English   中英

Firestore addDoc 錯誤:文檔參考無效。 文檔引用必須有偶數個段,但

[英]Firestore addDoc error:Invalid document reference. Document references must have an even number of segments, but

我想將我的數據保存到 React.js 應用程序中的 firestore,但 Firestore 返回我無效的文檔引用。 文檔引用必須有偶數個段,但

Firebase 配置文件

import { initializeApp,} from "firebase/app";
import {getAuth} from 'firebase/auth'
import {getFirestore} from "firebase/firestore"

const firebaseConfig = {
    apiKey: process.env.REACT_APP_FIREBASE_API_KEY,
    authDomain: process.env.REACT_APP_FIREBASE_AUTH_DOMAIN,
    projectId: process.env.REACT_APP_FIREBASE_PROJECT_ID,
    storageBucket: process.env.REACT_APP_FIREBASE_STORAGE_BUCKET,
    messagingSenderId: process.env.REACT_APP_FIREBASE_MESSAGING_SENDER_ID,
    appId:process.env.REACT_APP_FIREBASE_APP_ID,
    measurementId: process.env.REACT_APP_FIREBASE_MEASUREMENT_ID
  };

  const app =initializeApp(firebaseConfig);
  export const db=getFirestore(app);
  export const auth= getAuth(app)

這是我使用 addDoc 將數據保存到 firebase 的代碼

    try{ 
        const user = await createUserWithEmailAndPassword(auth,email,password);
         const data={
            userId:user.user.uid,
            name: "Pls set name",
            about:"Pls set about",
            profileImg:"",
            contacts:[
                "",
            ]
        }
        const docRef =doc(collection(db,`/users/`));
        await addDoc(docRef,data);
        return user
    }catch(err){
        console.log(err.message)
    }

最后是錯誤截圖

在此處輸入圖像描述

在創建每個用戶的文檔時,習慣上使用用戶的 UID 作為文檔 ID,以便該用戶以后可以輕松找到它們。 您的代碼當前正在為文檔 ID 生成兩個隨機字符串,這絕對不是您想要的。 第一個隨機 ID 來自您對doc()的調用,然后再次來自您對addDoc()的調用。

要將 UID 用作文檔 ID,請遵循文檔

await setDoc(doc(db, "users", user.user.uid), data);

暫無
暫無

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

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