Firebase DataSnapshot检索已删除/不存在的节点

时间:2019-02-21 04:35:19

标签: firebase firebase-realtime-database dart flutter

我正在使用Flutter作为前端移动框架,并使用Firebase实时数据库作为后端。我正在尝试计算某个特定组件的点击次数,为此我从firebase获得了最近的点击计数,并将其增加1并保存回去。一切正常。这里的问题是当我尝试直接在Firebase中重置计数时,dart中的DataSnapshot接收到旧计数。我什至删除了该节点,但它仍然检索非null的最近计数。下面是我的代码。

_buttonClicked() async {
   DatabaseReference ref = FirebaseDatabase.instance
    .reference()
    .child('analitics')
    .child('buttonclicks');
   ref.keepSynced(true);
   ref.once().then((DataSnapshot snap) {
    if (snap.value == null) {
      ref.set(
        {'count': 1},
      );
    } else {
      AnaliticsModel count = AnaliticsModel.fromSnapshot(snap);
      int tempcount = count.count;
      tempcount += 1;
      ref.update(
        {'count': tempcount},
      );
    }
  });
}

0 个答案:

没有答案