我希望有一个多选下拉菜单,用户可以在其中单击“应用”按钮(位于下拉菜单中)以关闭菜单。使用Angular Material和mat-select,有没有办法做到这一点?
我已经尝试过向按钮添加一个close方法,但是出现了很多控制台错误,包括“ control.registerOnDisabledChange不是函数”,以及单击后,“ control.markAsTouched不是函数” < / p>
<mat-form-field>
<mat-select #toppings placeholder="Toppings" [formControl]="toppings" multiple>
<mat-option *ngFor="let topping of toppingsList" [value]="topping">{{topping}}</mat-option>
<button (click)="toppings.close()">Apply</button>
</mat-select>
</mat-form-field>
该列表确实关闭,但是导致控制台错误。
答案 0 :(得分:0)
正如赞扬所提到的,存在命名冲突。这可行。
<mat-select #sl placeholder="Toppings" [formControl]="toppings" multiple>
<mat-option *ngFor="let topping of toppingsList" [value]="topping">{{topping}}</mat-option>
<button (click)="sl.close()">Apply</button>
</mat-select>