首页 > 解决方案 > Firebase DataSnapshot 检索已删除/不存在的节点

问题描述

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

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

标签: firebasefirebase-realtime-databasedartflutter

解决方案


推荐阅读