Как сделать sh индекс фильтра вместо индекса массива в angular 8 - PullRequest
0 голосов
/ 16 марта 2020

У меня есть два массива объектов A и B, между которыми я помещаю sh объектов. Когда я не использовал фильтр, все работает, то есть я могу переместить объект * B sh из B в A и переместить объект из B в A.

Но у меня проблема с фильтром, что когда я отфильтровываю, например, «Benz», который в удачный день является последним объектом в массиве B, и нажимаю кнопку «Добавить», объект «BMW» - это тот, который был добавлен в массив A вместо «Benz». Это означает, что индекс «массива B» добавлен вместо «индекса фильтра».

Как заставить мою кнопку pu sh фильтровать индекс вместо индекса массива B? Смотрите мой пример кода ниже.

ts

A = [{"name": "Ford"}]
B = [{"name": "BMW"}, {"name": "Toyota"}, {"name": "Jeep"}, {"name": "Benz"}]

addItem(i) {
  this.A.push(this.B[i]);
  this.B.splice(i, 1);
}

html

<input class="form-control col-md-8" type="search" [(ngModel)]="filterFunction" placeholder="filter here">

<tr *ngFor="let fromB of B | filterBy: filterFunction; let i=index;">
    <td><button type="button" (click)="addItem(i)">
        <i class="glyphicon glyphicon-plus"></i></button>
    </td>
 .........
</tr>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...