是否有任何事件可以在每次更新时监听数据是否完全相同?
让我解释一下我想要实现的目标。
如果我每1秒间隔设置如下所示的数据
setInterval(() => {
firebaseRef.child('liveUser').set({ userId: 1});
}, 1000);
如何在每次更新时收听liveUser?现在,如果值重复,我当前的实现firebase停止.on('value')
事件。
firebaseRef.child('liveUser').on('value', (snapshot) => {
console.log(snapshot.val());
})
我知道在liveUser对象中使用timestamp的替代解决方案,但如果firebase已经为重复数据提供了解决方案,那将会很有帮助。
答案 0 :(得分:2)
按照设计,只在数据更改时调用侦听器。将相同数据写入相同位置不会更改数据,因此不会触发附加的侦听器。
要触发附加的侦听器,您需要对节点进行更改:
setInterval(() => {
firebaseRef.child('liveUser').set({
userId: 1,
timestamp: Math.floor(Date.now())
});
}, 1000);