Firestore 用户 ID 与文档 ID 不同反应本机 firebase

Firestore user id is different of the document id react native firebase

我正在做一个简单的用户创建,但是 firestore 中的 id 字段为空并且 id 不同。

为什么会这样?如何解决?

代码如下:

const auth = await authFB().createUserWithEmailAndPassword(data.email, data.password);

const db = firestore();

await db
        .collection('Clients')
        .doc(auth.user.uid)
        .set({
          id: auth.user.uid,
          name: {
            first: firstName,
            last: lastName
            }
         });

文档图片如下:(看id:null):

解决方案是创建 const uid = auth.user.uid 并在 firestore 更新中分两步使用此常量。例如:

const auth = await authFB().createUserWithEmailAndPassword(data.email, data.password);

const uid = auth.user.uid;      // <----

const db = firestore();

await db
        .collection('Clients')
        .doc(uid)              // <----
        .set({
          id: uid,             // <----
          name: {
            first: firstName,
            last: lastName
            }
         });