<mat-slider class="ai-basic-slider"
id="inserted-media-range"
min="0" max="51" step="1"
discrete showTickMarks
[displayWith]="formatSlideRangeLabel">
<input matSliderStartThumb>
<input matSliderEndThumb>
</mat-slider>
public formatSlideRangeLabel(value: number): string {
if (value == 51) {
return 'Max: ∞';
} else {
return 'Max: ' + value;
}
return `${value}`;
}
首先将min
和
max
然后您需要做的就是检查displaywith的值是否等于使用
min
的值,如果值等于值,则是您要处理的最小值。
ngModel
要访问public formatSlideRangeLabel(value: number): string {
if (value === this.min()) {
// then it is max
return 'Min: ' + value;
} else {
if (value == 51) {
return 'Max: ∞';
} else {
return 'Max: ' + value;
}
}
}
,您必须确保在组件上下文中执行该函数,为了实现此目的,我们使用this.min()
.。
Html:
.bind(this)
TS:
<mat-slider
class="ai-basic-slider"
id="inserted-media-range"
min="0"
max="51"
step="1"
discrete
showTickMarks
[displayWith]="formatSlideRangeLabel.bind(this)"
>
<input matSliderStartThumb [(ngModel)]="min" />
<input matSliderEndThumb [(ngModel)]="max" />
</mat-slider>
stackblitzdemo