调试数据变量传递给更新事件

时间:2019-02-01 18:25:57

标签: firebase google-cloud-functions

我正在尝试将电子表格与Firebase数据库同步。我为要同步的数据库写了一个onupdate函数。

我在https://firebase.google.com/docs/functions/local-emulator?authuser=0上了解了有关调试自己的函数的信息

我在Cloud Firestore中有一个数据库, 表名:职员 字段:名称

我运行了firebase函数:shell

copyNamesToSheet({之前:{'P_KEY':{名称:'old'}},之后:{'P_KEY':{名称:'sadashiv'}}})

这将新值Sadashiv成功推向了表

export const copyNamesToSheet = functions.database.ref('/Staff').onUpdate(async change => {
  const data = change.after.val();

  let names : any[][]=[['test']];
  let count = 0;
  _.map(data, function(value) {
    names[count][0] = value['Name'];
    count = count+1;
  });
  //console.log(names);
  await jwtAuthPromise;
  sheets.spreadsheets.values.update({
      auth: jwtClient,
      spreadsheetId: spreadsheetId,
      range: 'Staff!A2:C100',  // update this range of cells
      valueInputOption: 'RAW',
      requestBody: { values: names }
  }, function (err : any, response : any) {
    if (err) {
    console.error(err);
    return;
    }
  });
})

我期望在部署该功能时也会发生同样的情况。部署后,我不知道它在哪里失败。显然,数据变量是不同的,但是在修改数据库时调用该变量时,我找不到一种简单的方法来查找变量的值。我读到有关日志记录的内容,但对我没有任何帮助。我想查找传递给更新函数的data变量的值,以便修改代码以处理并推送到工作表。

0 个答案:

没有答案