我有一个firebase函数,可以在项目更新时为其添加时间戳。我还看到过其他一些例子,其中代码陷入无限循环,因为最新更新的时间戳导致它再次运行,但我认为我在下面的代码中找到了这一部分。我相信这在某一点上运行良好,现在它似乎陷入了更新循环。我错过什么了吗?
exports.itemUpdate = functions.database.ref('/items/{id}').onUpdate((event) => {
//dont mark updated timestamp if item is deleted
if (!event.data.exists()) {
return null;
}
//dont update if we are simply updating timestamp
if (event.data.child('lastUpdated').changed()) {
return null;
}else{
return admin.database().ref('/items/' + event.params.id + '/lastUpdated').set(admin.database.ServerValue.TIMESTAMP);
}
});
请注意,这是v1之前的版本。firebase函数的0测试版。