【发布时间】:2019-04-28 10:08:39
【问题描述】:
我正在尝试获取它如果有人单击按钮它将更新数据库但是如果我输入 50 会发生什么然后它将继续运行它并且我有一个跟踪板来总结所有内容因此它使我的服务器超载并且当它通常刚刚超过 100 时,总数在 1000 中。
我已经尝试了一个文档准备功能,我已经有一个。 ('click') 并且它会一直运行多次
$('#update_new_used-counter').one('click', function (event) {
event.preventDefault();
let updated_new_counter = $('#new_sold-update').val().trim();
let updated_used_counter = $('#used_sold-update').val().trim();
trackingBoardRef.on("value", function(snapshot) {
let current_new_counter = snapshot.val().new;
let current_used_counter = snapshot.val().used;
if (updated_new_counter == '') {
trackingBoardRef.update({
new: current_new_counter,
});
} else {
trackingBoardRef.update({
new: updated_new_counter,
})
};
if (updated_used_counter == '') {
trackingBoardRef.update({
used: current_used_counter,
});
} else {
trackingBoardRef.update({
used: updated_used_counter,
})
};
console.log(snapshot.val().new);
console.log(snapshot.val().used);
});
});
这就是我现在所拥有的,它只是一直运行多次,直到 firebase 说我有很多请求并停止它。我只想更新一次
【问题讨论】:
-
什么是
trackingBoardRef?您传递给on的“价值”事件是什么?你在混合 jQuery 和 React 吗? -
@jmargolisvt 不,没有反应。 TrackingBoardRef 是 Firebase 的参考
-
var trackingBoardRef = database.ref('tracking_board');
标签: javascript jquery firebase-realtime-database