Как удалить отдельный элемент с помощью splice (), только если этот элемент присутствует в массиве? - PullRequest
1 голос
/ 17 июня 2020

Я передаю возвращаемые сервером полезные данные в allUsers и хочу удалить объект вошедшего в систему пользователя из массива allUsers . Он работает нормально, когда длина allUsers больше 1, но он удаляет объект, даже если идентификаторы не совпадают, если allUsers содержат только один объект.

this.allUsers = response.payload.users;
this.allUsers.splice(this.allUsers.findIndex(x => x.id === sessionData.id), 1);

1 Ответ

5 голосов
/ 17 июня 2020

Вы можете просто использовать filter, чтобы получить новый массив со всеми пользователями без текущего вошедшего в систему:

this.allUsers = response.payload.users.filter(x => x.id !== sessionData.id);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...