Облачная функция Firebase в Javascript.Удалить () функция не работает - PullRequest
0 голосов
/ 25 июня 2018

У меня есть облачная функция Firebase.Внутри функции helloWorld все работает как положено, кроме строки deedRef.limitToLast (1) .remove ();Я также пытался сделать .ref (/deeds/${deedID}). Remove (), есть ли причина, по которой я не могу удалить данные из firebase в облачных функциях?Вывод запроса http: «Ошибка: не удалось обработать запрос».

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

const deedRef = admin.database().ref('/deeds');
const oldDeedRef = admin.database().ref('/oldDeeds');
exports.helloWorld = functions.https.onRequest((req, res) => {

    deedRef.limitToLast(1).once("value", (snapshot) => {
                snapshot.forEach((deedSnapshot) =>{
                    let deedID = deedSnapshot.val().id;
                    let text = deedSnapshot.val().message;
                    oldDeedRef.push({
                        id: deedID,
                        message: text
                    })
                })
            })
    deedRef.limitToLast(1).remove();
    res.send("Congrats For running the function");
});

1 Ответ

0 голосов
/ 25 июня 2018

Проблема не имеет ничего общего с облачными функциями.

deedRef.limitToLast(1) возвращает объект типа Query . Query не имеет метода с именем remove(). Поэтому ваш код не будет работать во время выполнения с сообщением об этом.

Если вы хотите удалить некоторые данные из базы данных реального времени, вам понадобится объект типа Reference , который имеет метод remove () . Это удалит все в месте ссылки.

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