FireBase добавить пользователя в базу данных в реальном времени при регистрации (JavaScript) - PullRequest
0 голосов
/ 21 сентября 2018

Мне нужно создать основной узел пользователей, который будет иметь в качестве дочерних пользователей идентификатор, созданный при регистрации, а также дочерние элементы, динамически заполняемые позже (пока пусто).

, поэтому мой БДбудет выглядеть так:

- users
     - uid
        - lists
            - list name
                - content
     - uid
     - uid
     ...

Я все еще в начале, и сейчас я пытаюсь поместить идентификатор пользователя в - users, но не работает, код ( EDITED ):

var refUsers = database.ref('users');

// Add sign up event
btnSignup.addEventListener('click', e => {
  // to do: check for real email
  const email = txtEmail.value;
  const pass = txtPassword.value;
  const auth = firebase.auth();
  // Sign in
  auth.createUserWithEmailAndPassword(email, pass)
  .then(function success(userData){
    var uid = userData.uid;
    refUsers.push(uid);
  })
  .catch(function(error) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  alert('Error: ' + errorMessage);
  });
});

Я также не понял, должен ли я вручную или программно создать основной узел - users внутри базы данных, как (поскольку он также запрашивает у меня значение) так что покая вообще его не создавал, документация нехватка многих вещей imo.

1 Ответ

0 голосов
/ 21 сентября 2018

Функциональность, которую вы описываете, может быть достигнута с помощью Триггеров аутентификации Firebase .

т.е..

const database = firebase.database()
const createUser = user => database.ref().child(`User/${user.uid}`).set(user)
exports.createUser = functions.auth.user().onCreate(createUser)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...