добавление элементов в базу данных реального времени с помощью Trigger - PullRequest
1 голос
/ 21 апреля 2019

Я использую облачную функцию Firebase для запуска обновления базы данных при создании поля в моей базе данных.

exports.dbTest2 = functions.database.ref('/{uid}/ignore')
    .onCreate((snapshot, context) => {

        const uid = context.params.uid
        console.log(`Current User ${uid}`)

        // Data added at the location
        const ignoreData = snapshot.val()
        const endTime = new Date(ignoreData.endTime).toString()


        // ref matches `/{uid}/ignore`
        return snapshot.ref.parent.child('schedule').set({

                allDay: false,
                endDate: new Date().toString(),
                id: 100,
                startDate: new Date().toString(),
                title: 'test'

         })

    });

Эта функция срабатывает, когда я добавляю ignore в свою базу данных в реальном времени. Когда это срабатывает, это выглядит так:

enter image description here

Однако я хочу, чтобы ignore была похожей на массив структурой, у которой есть индексы, где каждый индекс содержит объект. Примерно так:

Я тоже пробовал что-то вроде return snapshot.ref.parent.child('schedule').child().set(...

но не сработало, потому что child() требует параметр.

Любая помощь?

1 Ответ

1 голос
/ 21 апреля 2019

Вы можете просто передать массив с объектами:

 return snapshot.ref.parent.child('schedule').set(
  [
    {
        allDay: false,
        endDate: new Date().toString(),
        id: 100,
        startDate: new Date().toString(),
        title: 'test1'
    },
    {
        allDay: false,
        endDate: new Date().toString(),
        id: 101,
        startDate: new Date().toString(),
        title: 'test2'
    }
  ]
 );

Как это выглядит в моей базе данных (фотографии передаются в виде массива): firebase collection

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