gpt4 book ai didi

Firebase 函数 v 1.0 : Alternative of DeltaSnapshot. 在 v 1.0 后更改了()

转载 作者:行者123 更新时间:2023-12-03 06:44:56 25 4
gpt4 key购买 nike

在版本 1.0 之前,我使用 DeltaSnapshot.changed() 来检查我的数据库函数,传入数据下的数据是否发生更改。但现在升级到1.0版本后,该方法不再可用。有没有其他方法可以复制此功能?

一种方法是使用 beforeafter 以及我需要检查更改的节点下的循环子节点。有没有更好的方法来执行此操作?

最佳答案

正如其他答案中提到的,我们需要创建自己的方法来具有更改检查的功能。因此,这里有一个帮助器,用于事件数据中给定相对路径(不是来自根/的绝对路径)的对象比较。

'use strict';
let _ = require('lodash');

/**
*
* @param data Change<DataSnapshot> object received in the event.
* @param path Relative path in the data object received in the function.
* @returns {boolean} return true if there is a change in data of before and
* after snapshot , false if the values are identical
*/
function isChanged(data, path) {
let before = data.before.child(path);
let after = data.after.child(path);
if (before.exists() && !after.exists() ||
!before.exists() && after.exists()) {
return true;
}
else {
return !_.isEqual(before.val(), after.val());
}
}


module.exports = {
isChanged
};

关于Firebase 函数 v 1.0 : Alternative of DeltaSnapshot. 在 v 1.0 后更改了(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50523581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com