我想过滤多个 info。
要做到这一点,我尝试在content
上使用简单的过滤管道:
!
这是问题,
首先,我选择一些项目。
然后,我按关键字过滤我过滤了新项目。
现在我可以看到我以前的选择已经丢失。
这是因为每次过滤器更改它们时,Material都会构建选项。并且每次也清除选择。 所以我使用烟斗的想法对我来说不起作用。
感谢您阅读/帮助
答案 0 :(得分:1)
您可以根据搜索输入值隐藏选项,而不是使用管道过滤toppingList
。
将此添加到style.scss:
.hide {
display: none;
}
在您的组件HTML中:
<mat-form-field>
<mat-select placeholder="Toppings" [formControl]="toppings" multiple>
<mat-option *ngFor="let topping of toppingList" [class.hide]="text.value !== '' && topping.value.toLowerCase().indexOf(text.value.toLowerCase()) === -1" [value]="topping">
{{topping.value}}
</mat-option>
</mat-select>
</mat-form-field>