Javascript 事件发生后的增量Firebase子值

Javascript 事件发生后的增量Firebase子值,javascript,Javascript,我目前正在升级旧的IONIC 1应用程序(添加新功能)。 我读了很多帖子,但没有找到我问题的答案 首先,我的Firebase数据库结构如下所示: -产品 --productId ---图像URL ---价格 ---标题 ---喜欢:0 我想在每次用户触发时增加child likes的值(例如单击like按钮) my service.js函数如下所示: incrementLikeproduct: function(prodId){ return ref.child('produc

我目前正在升级旧的IONIC 1应用程序(添加新功能)。 我读了很多帖子,但没有找到我问题的答案

首先,我的Firebase数据库结构如下所示:
-产品
--productId
---图像URL
---价格
---标题
---喜欢:0

我想在每次用户触发时增加child likes的值(例如单击like按钮)

my service.js函数如下所示:

incrementLikeproduct: function(prodId){

        return ref.child('products').child(prodId).child('likes').set( xxxx );  
    },
我尝试从firebase中检索likes子对象的当前值作为var并添加+1;但是没有得到任何能正常工作的东西。我基本上不知道如何替换我函数中的xxxxx以获得预期的结果

我的问题是: 我应该如何编写incrementLikeproduct函数来增加firebase中的likes子值? 我读过关于异步侦听器的内容,但不知道如何在我的service.js中实现它

我知道IONIC1已经过时了,但我已经有了一段坚实的代码,我想在不从头开始整个应用程序开发的情况下添加新功能


我对JS很在行,如果有人能给我一个提示,我会非常感激:-)。

也许是这样的吧

incrementLikeproduct = function(prodId) {
  // fetch value first
  ref
    .child("products/" + prodId + "/likes")
    .once("value")
    .then(snapshot => {
      var oldLikes = snapshot.val();
      ref.child("products/" + prodId + "/likes").set(oldLikes + 1);
    });
};

这与爱奥尼亚无关。@Alexavin如果对你有用,请接受答案:)