javascript - Firebase:添加新子项

标签 javascript firebase firebase-realtime-database

当我的应用程序启动时,我会对 Firebase 进行初始提取以提取所有数据。当我稍后将数据添加到 Firebase 时,我只希望它获取已添加的新子项。

我目前正在实现这样的目标。有没有更好的方法或内置方法可以在 Firebase 中执行此操作?

let initialFetch = false;

ref.once('value', snap => {
  // get all child data
  initialFetch = true;  
});

ref.on('child_added', (snap) => {
  if (!initialFetch) return;
  // get new child data
});

感谢任何帮助。提前致谢!

最佳答案

  1. 如果您同时需要新数据和后续数据,请使用child_added。它将立即为所有现有子级触发,随后为添加的任何子级触发。

  2. 如果您只需要新数据,请为您的子项添加时间戳,并ref.orderByChild('timestamp').startAt(Date.now())

    <
  3. 如果您同时需要新数据和后续数据,但希望以不同方式对待初始子项:使用 child_added value就像你现在所做的那样。

另请参阅:How to only get new data without existing data from a Firebase?

关于javascript - Firebase:添加新子项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39549890/

相关文章:

javascript - 获取消息(按 ID)并编辑它

javascript - createPeriodicWave 从样本值数组

javascript - 使用 element 简化 onclick 函数

javascript - 应如何在 Firebase 的 Web 应用程序中显示和更新数据?

swift - Firebase 快照未正确解析数据

javascript - 渐进式 Web 应用程序 - 页面无法离线工作错误

javascript - October Cms - 如何使用前端表单保存 png 图像?

java - Spring boot 中的 Firebase 在初始化期间出现错误

swift - 将 FirebaseData 传递到 tablviewCell 时出现 fatal error : Index out of range,

firebase - 限制返回数据的深度