繁体   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