списка есть кнопка удаления этого элемента. После нажатия на кнопку и задержки в секунду элемент удаляется. Для удаления элемента я ищу элемент по индексу.
Проблема: если я удаляю один элемент и не дожидаясь его удаления, нажимаю удалить другой элемент, то я могу обратиться к другому элементу списка или даже к несуществующему. Как это можно обойти?
Создать состояние и дизейблить кнопки удаления, например Лучше искать не по индексу, а по уникальному айДи по причинам озвученным вами же
от индексов по ходу я не могу избавиться или пока не знаю как. дизейблить на ту самую секунду имеете ввиду?
так и сделаю пока что, спасибо
да сделайте .map для вашего массива(кстати, массив чего? объектов?) и либо добавьте айдишники в объекты либо пусть map возвращает объекты где будут айди
схема сложная, контекста много и хз какой ответ после комментария я могу ожидать)) массив формируется когда из input type=“file” выбирают несколько файлов. После этого отслеживается процесс загрузки этих файлов на сервер. В момент загрузки как раз и есть кнопка “отменить загрузку”. Соответственно, проходясь по массиву я создаю запросы и методы отмены для этих запросов. методы для отмены складываются в форматe { fileId: method, fileId: method, } на скрине прикрепил метод, выполняющийся после нажатия отмены. Если закомментить удаление из массива и оставить только смену статуса, то все работает корректно. Иначе все может упасть с ошибкой Cannot read properties of undefined (reading 'cancel')"
Обсуждают сегодня