Я использую Flutter в качестве внешнего мобильного каркаса, а базу данных Firebase в реальном времени - в качестве внутреннего.Я пытаюсь подсчитать количество кликов определенного компонента, для которого я получаю счетчик недавних кликов из firebase, увеличиваю его на 1 и сохраняю обратно.Работает нормально.Проблема здесь заключается в том, что когда я пытаюсь сбросить счетчик непосредственно в firebase, DataSnapshot в dart получает старый счетчик.Я даже удалил узел, но он по-прежнему извлекает ненулевое недавнее число.Ниже мой код.
_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},
);
}
});
}