diff --git a/src/material/slider/slider.ts b/src/material/slider/slider.ts index 107488276f6f..ccc3769da1b3 100644 --- a/src/material/slider/slider.ts +++ b/src/material/slider/slider.ts @@ -135,6 +135,7 @@ export class MatSlider } set discrete(v: BooleanInput) { this._discrete = coerceBooleanProperty(v); + this._updateValueIndicatorUIs(); } private _discrete: boolean = false; @@ -485,8 +486,7 @@ export class MatSlider eInput._updateStaticStyles(); sInput._updateStaticStyles(); - this._updateValueIndicatorUI(eInput); - this._updateValueIndicatorUI(sInput); + this._updateValueIndicatorUIs(); this._hasViewInitialized = true; @@ -773,6 +773,19 @@ export class MatSlider } } + /** Updates all value indicator UIs in the slider. */ + private _updateValueIndicatorUIs(): void { + const eInput = this._getInput(_MatThumb.END); + const sInput = this._getInput(_MatThumb.START); + + if (eInput) { + this._updateValueIndicatorUI(eInput); + } + if (sInput) { + this._updateValueIndicatorUI(sInput); + } + } + // Update Tick Mark Track Width // // 1. Min, max, or step