Вам необходимо вызвать метод delete()
для нужного элемента.
Коллекция Firebase не является упорядоченным типом данных, поэтому такого понятия, как «первый элемент», не существует.Но вы можете add()
установить некоторый флаг (например, метку времени), чтобы отличить, какой элемент был добавлен первым.Сама коллекция Firebase не имеет встроенного флага для определения элемента как «первого».
Например, если у вас есть отметка времени:
var collection = firebase.database().ref('/path/to/collection');
var collectionLast = collection.orderByChild('timestamp').limit(1);
var listener = collectionLast.on('child_added', function(snapshot) {
snapshot.ref.remove();
});
- get collectionссылка
- упорядочение элементов по отметке времени (это будет сделано в порядке возрастания), ограничение первым элементом
- при извлечении этого элемента из коллекции, событие
child_added
инициируется с полезной нагрузкой моментального снимкаи удалите его.
Также, если вам это нужно для облачной функции, обратите внимание на событие value
.Вам нужно изменить третий шаг на следующий код:
collectionLast.once('value', function(snapshot) {
var updates = {};
snapshot.forEach(function(child) {
updates[child.key] = null
});
return ref.update(updates);
});
Для получения дополнительной информации вы можете получить документ: https://firebase.google.com/docs/database/admin/retrieve-data