Ng-click и ng-repeat - angularJs не работает - PullRequest
0 голосов
/ 03 ноября 2018

Я знаю о различных областях действия внутри ng-repeat, я думал об этом, но до сих пор не могу решить проблему удаления выбранного элемента li (я не использую $ index) вместо будущих сортируемых объектов

<li class="m-1" ng-repeat="students in students.students">
  <span>{{students.student}}</span> :knowledge is - <span>{{students.knowledge}}</span>
  <button type="button" class="btn btn-danger ml-2" ng-click="students.removeItem(item)">Delete</button>
</li>

и моя функция работает за li-элементом, но удаляет только последний элемент

vm.removeItem = function (item) {
  vm.students.splice(vm.students.indexOf(item), 1);
}

и мне не нужен $ parent в ng-repeat

1 Ответ

0 голосов
/ 03 ноября 2018

Может быть, вы пытаетесь сделать что-то вроде:

<li class="m-1" ng-repeat="student in students.students">
  <span>{{student.name}}</span> :knowledge is - <span>{{student.knowledge}} </span>
  <button type="button" class="btn btn-danger ml-2" ng- click="removeItem(student)">Delete</button>
</li>

$scope.removeItem = function (item) {
    this.students.students = this.students.students.filter(student => student !== item)
};

Это рабочая демоверсия

Честно говоря, я не понимаю, почему ученики возражают против учеников. Кроме того, почему каждый элемент в ng-repeat называется: Students?

Я полагаю, что каждому элементу нужно имя переменной student.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...