У меня есть список с именем «гости», все работает хорошо, пока я не попытаюсь удалить гостя из определенной таблицы.
Для удаления я получаю данные таблицы из Firestore, фильтрую пользователя и снова обновляю их до Firestore.
Когда я получаю данные из Firestore, вся таблица добавляется к заказанным «гостям».
Это происходит каждый раз, когда я получаю данные, и я не могу понять, как они обновляются, потому что я просто фильтрую пользователя и обновляю его до Firestore.
Все работает, как и ожидалось, кроме этой проблемы, я могу удалить ее из «таблиц», но у «гостей» есть эта проблема.
Я пробовал несколько способов получить данные, но тот же результат.
Код:
onGuestDelete = async (id, tableId) => {
const { firestore, auth } = this.props;
const data = await firestore.get({ collection: 'guests', doc: auth.uid, subcollections: [{ collection: 'userTables', doc: tableId }] });
const tableGuests = data.get('tableGuests').filter(guest => guest !== id);
firestore.update({ collection: 'guests', doc: auth.uid, subcollections: [{ collection: 'userTables', doc: table.id }] }, { tableGuests });
}
После запуска GET_SUCCESS вы можете увидеть последний элемент массива (8).