diff --git a/src/hooks/useDrag.ts b/src/hooks/useDrag.ts index 7bbad8cee..8b4980253 100644 --- a/src/hooks/useDrag.ts +++ b/src/hooks/useDrag.ts @@ -108,7 +108,6 @@ function useDrag( const onStartMove: OnStartMove = (e, valueIndex, startValues?: number[]) => { e.stopPropagation(); - e.preventDefault(); // 如果是点击 track 触发的,需要传入变化后的初始值,而不能直接用 rawValues const initialValues = startValues || rawValues; diff --git a/tests/Range.test.tsx b/tests/Range.test.tsx index 7b53816e1..e90381b14 100644 --- a/tests/Range.test.tsx +++ b/tests/Range.test.tsx @@ -25,7 +25,12 @@ describe('Range', () => { resetWarned(); }); - function doMouseDown(container: HTMLElement, start: number, element = 'rc-slider-handle') { + function doMouseDown( + container: HTMLElement, + start: number, + element = 'rc-slider-handle', + skipEventCheck = false, + ) { const ele = container.getElementsByClassName(element)[0]; const mouseDown = createEvent.mouseDown(ele); (mouseDown as any).pageX = start; @@ -42,7 +47,10 @@ describe('Range', () => { fireEvent.mouseEnter(ele); fireEvent(ele, mouseDown); - expect(preventDefault).toHaveBeenCalled(); + // Should not prevent default since focus will not change + if (!skipEventCheck) { + expect(preventDefault).not.toHaveBeenCalled(); + } } function doMouseMove( @@ -635,7 +643,7 @@ describe('Range', () => { />, ); - doMouseDown(container, 50, 'rc-slider'); + doMouseDown(container, 50, 'rc-slider', true); expect(onChange).toHaveBeenCalledWith([0, 50, 100]); });