Я довольно новичок в angular, и в настоящее время я пытаюсь создать поиск, который возвращает элемент, если он соответствует входным данным. Мне удалось заставить функцию поиска работать, однако я хочу напечатать «термин» ТОЛЬКО, если он отфильтровал отображаемые элементы. Так вот мой код:
<section id="search" class="container">
<div class="form-group fg--search">
<input type="text" [(ngModel)]="query" class="input" placeholder="Search on site">
<button type="submit"><i class="material-icons search">search</i></button>
<div class="search-results">
<div class="search-category-box" *ngFor="let searchCategory of searchItems" >
<label *ngIf="searchCategory.items.length"> {{searchCategory.name}} </label>
<div *ngFor="let searchItem of searchCategory.items | search:'name,description':query">
<p class="item">{{searchItem.name}}</p>
</div>
</div>
</div>
</div>
</section>
<label *ngIf="searchCategory.items.length"> {{searchCategory.name}} </label>
Должен быть напечатан, только если l oop с поисковой трубкой возвращает какие-либо элементы, связанные с searchCategory.
Я полностью осознаю, что .length не работает в моем текущем коде, так как массив всегда будет содержать элементы, даже если они отфильтрованы или нет.
Как мне решить эту проблему?