При использовании функции onUpdate в Firebase, как мне получить дочерний элемент возвращенного снимка? - PullRequest
0 голосов
/ 07 августа 2020

У меня есть приведенный ниже код, который раньше запускался с использованием .onCreate, я изменил его на .onUpdate, и теперь в строках .child () есть ошибки, указывающие, что я не могу выполнить действие. Как мне продолжить? Мне нужно получить доступ к этим значениям.

   export const sendNewMessageNotification = functions.database
  .ref('/ChatTimelines/{uid}/{chatID}/')
  .onUpdate((snapshot, context) => {
    //.onCreate
    const uid = context.params.uid
    const otherUID = snapshot.child("otherUID").val()//error
    const message = snapshot.child("lastMessage").val()//error
    snapshot
  
    //addNewLikeNotif(uid, newLikerUID, mediaNumber, timeStamp, postID)
    return sendNewMessageNotificationFunc(uid, otherUID, message) 
  })

Обновление: Update2 это не сработало

(изменение, контекст)

 let snapshot = change.after.val()
const otherUID = snapshot.child("otherUID").val()
const message = snapshot.child("lastMessage").val()

1 Ответ

0 голосов
/ 07 августа 2020

Если вы используете onUpdate, вам необходимо сделать следующее:

  .onUpdate((snapshot, context) => {
    const uid = context.params.uid
    const otherUID = snapshot.after.child("otherUID").val();
    const message = snapshot.after.child("lastMessage").val();

Проверить документы:

https://firebase.google.com/docs/functions/beta-v1-diff#sdk_changes_by_trigger_type

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...