Firebase 用户配置文件添加自定义字段

Oli*_*via 10 javascript firebase firebase-authentication react-native-firebase

是否可以将自定义字段添加到 Firebase 中的用户配置文件表?

现在看起来我只能将数据添加到:

  • “uid”
  • “显示名称”
  • “照片网址”
  • “电子邮件”
  • “电子邮件已验证”
  • “电话号码”
  • “是匿名的”
  • “租户ID”
  • “提供者数据”:
  • “API密钥”
  • “应用名称”
  • “身份验证域”
  • “stsTokenManager”
  • “重定向事件ID”
  • “上次登录时间”
  • “创建于”

我希望能够将自定义对象添加到 JSON 字符串以包含所有用户数据。

https://firebase.google.com/docs/auth/web/manage-users

Ang*_*elo 15

快速示例,在我注册用户后,我将该用户添加到 usersCollection 并根据需要提供其他字段信息。

在我的 firebase 驱动的应用程序中,我所做的是以下内容:

import app from 'firebase/app'
import 'firebase/auth'
import 'firebase/database'
import 'firebase/firestore'

const config = {
  apiKey: process.env.REACT_APP_API_KEY,
  authDomain: process.env.REACT_APP_AUTH_DOMAIN,
  databaseURL: process.env.REACT_APP_DATABASE_URL,
  projectId: process.env.REACT_APP_PROJECT_ID,
  storageBucket: process.env.REACT_APP_STORAGE_BUCKET,
  messagingSenderId: process.env.REACT_APP_MESSAGING_SENDER_ID 
}

class Firebase {
  constructor (props) {
    app.initializeApp(config)

    this.auth = app.auth()
    this.db = app.database()
    this.firestore = app.firestore()
  }

  signUpWithEmailAndPassword = (email, pw) => {
    this.auth.createUserWithEmailAndPassword(email, password)
    .then(registeredUser => {
      this.firestore.collection("usersCollection")
      .add({
        uid: registeredUser.user.uid,
        field: 'Info you want to get here',
        anotherField: 'Another Info...',
        ....
      })
    }
  }
}

Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。

  • 为了给 @Angelo 的答案添加一些背景知识,Firebase 身份验证是一种身份验证解决方案,它并不是一个用户配置文件管理系统。开发人员可以自己实现用户配置文件功能,因为这些功能往往取决于系统的特定用例。 (3认同)