Я занимаюсь angular проектом и хочу разрешить пользователю искать / фильтровать по существующим тегам (mat-chips). У меня есть окно поиска, и я могу отфильтровать обычный список, но когда я попытался сделать это для тегов, я не уверен, как.
Мой матовый чип внутри home.component. html.
<mc-tags [chips] = "tags" ></mc-tags>
Поле моего поиска внутри home.component. html
<input matInput (input)="updateQuery($event.target.value)" class="input" >
данные внутри list.ts
export const tags = ['Google', 'Manufacturer'];
home.component.ts file
import { Component, OnInit } from '@angular/core';
import { users, tags } from './users.data';
@Component({
selector: 'mc-explore',
templateUrl: './explore.component.html',
styleUrls: ['./explore.component.scss']
})
export class ExploreComponent{
query: string;
users = users;
tags = tags;
updateQuery(query: string) {
this.query = query;
}
}
Вот как это выглядит прямо сейчас
Изображение
Так я обычно фильтрую обычный список / data
<div [hidden]="!query">
<div *ngFor="let name of users | search:query">{{ name }}</div>
</div>
Файл Stackblitz без тегов m c, поскольку он используется из разных компонентов
https://stackblitz.com/edit/angular-vcklft