Облачные функции Firebase: получение значений из массива для обмена сообщениями - PullRequest
0 голосов
/ 17 апреля 2019

Моя база данных Firebase выглядит следующим образом:

Item1
|_____ o1
|_____ o2
|_____ o3 
       |__ 0
           |____ e1 
           |____ e2
       |__ 1
           |____ e1 
           |____ e2
       |__ ...
|_____ o4 

o1, o2, o4 - строки. o3 это массив. e1 и e2 - строки. Моя облачная функция TypeScript выглядит следующим образом:

interface Item {
    o1 : string, 
    o2: string, 
    o4: string, 
    o3: ???
}

exports.onAddItem = functions.database.ref("/items/{itemUID}").onCreate((change, context) => {
    const notificationTitle = "New Item!"
    const itemUID = context.params['itemUID']

    const itemPayload = {
        obj1 : change.child("o1").val(), 
        obj2 : change.child("o2").val(), 
        obj4 : change.child("o4").val(), 
        obj3 : change.child("o3").val()
    }

    return sendNotification(notificationTitle, obj1 + " - " +  obj2, "TOPIC1", itemPayload)
})

Как получить массив o3 для отправки через admin.messaging().send(payload)? Какой тип данных необходим для o3? Правильно ли использовать change.child("o3").val() для получения содержимого массива?

...