Так вот, как я добавляю дочерние узлы и присваиваю им значения в базе данных реального времени firebase с помощью облачных функций firebase.
export const addUserInfo = functions.database
.ref('/Users/{UserID}')
.onCreate((snapshot, context) => {
const userData = snapshot.val()
const username = userData.username
const userUID = context.params.UserID
console.log(`${username} has UID ${userUID}.`)
return snapshot.ref.parent!.parent!.child('userInfo').child(`${userUID}`).set({ "username": newUsername, "uid": userUID})
})
У меня есть другая похожая функция:
export const addUserToWhitelist = functions.database
.ref('/Users/{UserID}')
.onCreate((snapshot, context) => {
const userData = snapshot.val()
const username = userData.username
console.log(`${username} has been whitelisted`)
return snapshot.ref.parent!.parent!.child('whitelist').set({ "username": newUsername})
})
Итак в основном я добавляю информацию о пользователях в два разных места в базе данных Firebase, используя две уникальные функции.
Вы не можете иметь более одного оператора возврата в одной облачной функции.
Поэтому есть ли способ, которым я могу добавить обе информационные данные в их соответствующие уникальные местоположения в база данных firebase, использующая одну функцию? Я имею в виду, что оператор return второй функции может быть выполнен в самой первой? Это значительно поможет уменьшить размер кода, а также поможет сохранить вызов функции в некоторой степени.