Skip to content

Commit 9ce6fe4

Browse files
authored
Merge pull request #20814 from mortalYoung/fix-20807
fix(dataZoom): restrict range on brushEnd
2 parents 6cba74c + 97939bd commit 9ce6fe4

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

src/component/dataZoom/SliderZoomView.ts

+16-4
Original file line numberDiff line numberDiff line change
@@ -994,13 +994,25 @@ class SliderZoomView extends DataZoomView {
994994
const viewExtend = this._getViewExtent();
995995
const percentExtent = [0, 100];
996996

997+
const handleEnds = this._handleEnds = [brushShape.x, brushShape.x + brushShape.width];
998+
const minMaxSpan = this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();
999+
// Restrict range.
1000+
sliderMove(
1001+
0,
1002+
handleEnds,
1003+
viewExtend,
1004+
0,
1005+
minMaxSpan.minSpan != null
1006+
? linearMap(minMaxSpan.minSpan, percentExtent, viewExtend, true) : null,
1007+
minMaxSpan.maxSpan != null
1008+
? linearMap(minMaxSpan.maxSpan, percentExtent, viewExtend, true) : null
1009+
);
1010+
9971011
this._range = asc([
998-
linearMap(brushShape.x, viewExtend, percentExtent, true),
999-
linearMap(brushShape.x + brushShape.width, viewExtend, percentExtent, true)
1012+
linearMap(handleEnds[0], viewExtend, percentExtent, true),
1013+
linearMap(handleEnds[1], viewExtend, percentExtent, true)
10001014
]);
10011015

1002-
this._handleEnds = [brushShape.x, brushShape.x + brushShape.width];
1003-
10041016
this._updateView();
10051017

10061018
this._dispatchZoomAction(false);

0 commit comments

Comments
 (0)