Удаление объекта в списке на основе значения поля Vue.js

#javascript #vue.js #vuejs2

#javascript #vue.js #vuejs2

Вопрос:

У меня есть массив объектов, и я хочу удалить объекты, если одно из свойств является истинным. Например,

 data(){
  return{
      entries : [
                 {
                name : "name here",
                age : 20,
                school:"UTK",
                isSelected : false
          },{
                name : "name here",
                age : 20,
                school:"UTK",
                isSelected : false
          },{
                name : "name here",
                age : 20,
                school:"UTK",
                isSelected : false
          }
       ]
  }
{
  

Когда пользователь нажимает кнопку, я вызываю функцию в моем блоке методов. Мне нужна функция для удаления всех объектов, для свойства «IsSelected» установлено значение true.

Любая помощь приветствуется!!

Ответ №1:

Метод должен содержать следующий код, который фильтрует элементы isSelected:true и удаляет их :

 this.entries=this.entries.filter(entry=>!entry.isSelected)
  

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

1. почему я проголосовал против? если с моим ответом что-то пошло не так, вы можете прокомментировать

Ответ №2:

в функции:

 this.entries = this.entries.filter(e=> e.isSelected == true);
  

Ответ №3:

Вы также можете использовать filter() внутри объекта entries:

 data(){
  return{
      entries : [
                 {
                name : "name here",
                age : 20,
                school:"UTK",
                isSelected : false
          },{
                name : "name here",
                age : 20,
                school:"UTK",
                isSelected : false
          },{
                name : "name here",
                age : 20,
                school:"UTK",
                isSelected : false
          }
       ].filter(e=>e.isSelected!=true)
  }
  
}