如何更新火力的数据,因为它在树端返回新的未定义值

问题描述 投票:0回答:2

我需要更新,一个数据的价值。

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 }) );

如何更新已经存在的数据。是我的代码错了吗?

javascript firebase firebase-realtime-database nosql
2个回答
0
投票

我想你可能需要更新整个节点。当我做类似的事情,这是我的代码。

  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);

尝试复制你的对象,然后改变一个领域,推动新对象在更新。


0
投票

getUser方法获得通过他们的UID的用户。从reference docs for Auth.getUser

获取对应于给定uid的用户的用户数据。

如果您phone变量(顾名思义)是一个电话号码,然后你要改用getUserByPhoneNumbergetUser()

admin.auth().getUserByPhoneNumber(phone)
  ...
© www.soinside.com 2019 - 2024. All rights reserved.