Firebase云功能:onUpdate更改参数错误去除值

时间:2018-06-19 10:14:20

标签: javascript firebase firebase-realtime-database google-cloud-firestore firebase-cli

我有以下云功能:

export const userActicityUpdate = functions.database.ref("/userActivities/{userId}/{objectId}").onUpdate((change, context) => {
    console.log("Before:\n", change.before.val(), "\nAfter:\n", change.after.val())
    return true
})

当我在userActivities/123/321存储以下数据时:

{
    "testData": 123
    "moreTestData": 321
    "wow": 321
    "nice": 909
}

然后将该节点的数据设置为:

{
    "testData": 123
    "moreTestData": 99999321
}

我希望上面的函数触发一次,更改参数与上面的两个数据完全匹配。这是当我部署函数并更改数据时会发生什么。

但是,当我通过终端上的functions:shell 进行测试时,我看到了不同的change.after快照。

我运行这样的功能:

userActicityUpdate({
    before: {testData:123,moreTestData:321,wow:321,nice:909},
    after: {testData:123,moreTestData:99999321}
})

然后我看到控制台的以下输出:

  

之前:{testData:123,moreTestData:321,哇:321,不错:909}

     

之后:{testData:123,moreTestData:99999321,哇:321,不错:909}

当数据被移除后,后快照中包含值wownice怎么来?

如何可靠地测试此案例?

0 个答案:

没有答案