Как обновить данные Firebase, так как они возвращают новое неопределенное значение в конце дерева - PullRequest
0 голосов
/ 04 февраля 2019

Мне нужно обновить, значение данных.

enter image description here

Мне нужно обновить, orderStatus.Но когда я использую обновление, он создает новый элемент как «неопределенный» в нижней части дерева.

Вот код:

admin.auth().getUser(phone)
    .then(() => {
        return  admin.database().ref(`orders/${phone}/${uid}`)
            .update({ orderStatus: "Hair" });
    })
    .catch((err)=> res.status(422).send({ error:err }) );

Как обновить уже существующие данные.Мой код неверен?

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

Метод getUser получает пользователя по его UID.Из справочных документов для Auth.getUser:

Получает пользовательские данные для пользователя, соответствующие данному uid.

Если вашphone переменная (как следует из названия) - это номер телефона, тогда вам нужно будет использовать getUserByPhoneNumber вместо getUser().

admin.auth().getUserByPhoneNumber(phone)
  ...
0 голосов
/ 04 февраля 2019

Я думаю, вам, возможно, придется обновить весь узел.Когда я делал нечто подобное, это был мой код.

  const updateObj ={}
      if (payload.welcome){
        updateObj.welcome = payload.welcome
      }
      if(payload.description){
        updateObj.description = payload.description
      }
      if(payload.date){
        updateObj.date = payload.date
      }
      firebase.database().ref('/users/' + getters.user.id).child('/displays').child(payload.id).update(updateObj);

Попробуйте клонировать свой объект, затем измените это поле и вставьте новый объект в обновление.

...