#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 Потрясающе, спасибо!