我即将设置数据库,我将不得不通过上传json文件手动更新它。 但不幸的是,手动更新会降低和替换数据。
所以我想知道...... 如果我在数据库的一个键上设置了一个eventlistener,那么每次更新数据库时都会触发它吗? 或者,它是否足够智能以检测与先前更新的差异?
示例:
从下面的更新序列中,如果我在“Key1”上设置了一个eventlistener,哪一个会触发监听器?
起点: { “KEY1”: [ { “DATA1”: “VALUE1” “DATA2”: “值2” } ] }
第一次更新: { “KEY1”: [ { “DATA1”: “VALUE1” “DATA2”: “值2” } ] }
第二次更新: { “KEY1”: [ { “DATA1”: “VALUE1” “DATA2”: “VALUE2” “数据3”:“值3” } ] }
第3次更新: { “KEY1”: [ { “DATA1”: “VALUE1” “数据3”:“值3” } ] }
由于
答案 0 :(得分:0)
您有不同类型的事件侦听器。因此,如果您使用FIRDataEventType.value
进行观察,您将收到有关指定节点(或其后代)中发生的每个更改的通知 - 在您的示例中,它将是第2次和第3次更新。
但是,您可以选择仅在添加子项时或在删除子项时收到通知。
您可以在FIRDataEventType
enum = D