Удалить объект в массиве с указанным идентификатором

#javascript #vue.js #filter

#javascript #vue.js #Фильтр

Вопрос:

Я проверил много примеров из stack overflow, но я все еще пытаюсь понять, где я допустил ошибку. Итак, с помощью шины событий я извлекаю идентификатор элемента, который мне нужно удалить. Я проверил, и идентификатор поступает без каких-либо проблем. проблема в том, что я не могу отфильтровать элемент, идентификатор которого равен идентификатору, который я получаю обратно из события click. Это код:

 export default {
data() {
    return {
        quotes: [
            { id: 1, content: 'First quote'},
            { id: 2, content: 'Second quote'},
        ]
    }
},
created() {
    eventBus.$on('deleteQuote', (providedId) => {
        this.quotes.filter((quote) => quote.id === providedId);
    });
}
  

}

Комментарии:

1. filter() не изменяет массив на месте, он возвращает новый массив, вам нужно присвоить результат: this.quotes = this.quotes.filter(...)

2. Кроме того, если вы хотите удалить элемент с получаемым идентификатором, то условие должно быть !== .

3. @Barmar Большое вам спасибо!

4. @Nithish Потрясающе, спасибо!