Возвращаемое значение из массива объектов, где выполняется определенное требование - PullRequest
0 голосов
/ 11 апреля 2019

В моем шаблоне у меня есть товары с изображением.Вы можете заказать эти продукты, которые должны сделать изображение другим.Заказ может иметь несколько статусов: Заказ размещен, Заказан и Получен.Мне нужно получить статус продукта с определенным идентификатором.Это мой шаблон:

<div *ngFor="let lproduct of locationProducts">
      <div class="productDivWidth" *ngIf="lproduct.departmentId.departmentId == location.departmentId.departmentId">
        {{lproduct.productId.productName}}
        <br>
        <img *ngIf="IsOrdered(lproduct.productId.productId) === null" src="{{lproduct.productId.productImage}}"
          class="product-image">
        <img *ngIf="IsOrdered(lproduct.productId.productId) === Openstaand"
          src="https://image.flaticon.com/icons/svg/175/175461.svg" class="product-image">
        <br>
        <button class="btn btn-default" data-toggle="modal" data-target="#exampleModal"
          (click)="OrderProduct(lproduct.productDepartmentId)"></button>
      </div>
    </div>

Моя функция:

 IsOrdered(id: number) {
    return this.orders.filter(e => e.productId.productId === id).statusId.statusName;
  }

1 Ответ

1 голос
/ 11 апреля 2019

метод фильтра возвращает массив, поэтому попробуйте заменить его на find, который возвращает первый соответствующий элемент, так как я предполагаю, что идентификаторы уникальны, поэтому измените ваш возвращаемый статус на

return this.orders.find(e => e.productId.productId === id).statusId.statusName
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...