2016-07-21 09:51:04 +08:00
---
category: Components
2022-11-09 12:28:04 +08:00
group: Data Entry
2016-07-21 09:51:04 +08:00
title: Slider
2022-11-30 20:14:41 +08:00
cover: https://mdn.alipayobjects.com/huamei_7uahnr/afts/img/A*_4heQaUrFn4AAAAAAAAAAAAADrJ8AQ/original
2023-02-09 22:17:31 +08:00
coverDark: https://mdn.alipayobjects.com/huamei_7uahnr/afts/img/A*XkgXTaudeosAAAAAAAAAAAAADrJ8AQ/original
2022-11-09 12:28:04 +08:00
demo:
cols: 2
2016-07-21 09:51:04 +08:00
---
A Slider component for displaying current value and intervals in range.
2016-09-10 13:43:30 +08:00
## When To Use
2016-07-21 09:51:04 +08:00
To input a value in a range.
2022-11-09 12:28:04 +08:00
## Examples
2022-11-17 17:31:26 +08:00
<!-- prettier - ignore -->
2022-11-09 12:28:04 +08:00
< code src = "./demo/basic.tsx" > Basic< / code >
< code src = "./demo/input-number.tsx" > Slider with InputNumber< / code >
< code src = "./demo/icon-slider.tsx" > Slider with icon< / code >
< code src = "./demo/tip-formatter.tsx" > Customize tooltip< / code >
< code src = "./demo/event.tsx" > Event< / code >
< code src = "./demo/mark.tsx" > Graduated slider< / code >
< code src = "./demo/vertical.tsx" > Vertical< / code >
< code src = "./demo/show-tooltip.tsx" > Control visible of ToolTip< / code >
< code src = "./demo/reverse.tsx" > Reverse< / code >
2023-02-23 21:56:43 +08:00
< code src = "./demo/draggableTrack.tsx" > Draggable track< / code >
2023-06-15 10:22:17 +08:00
< code src = "./demo/component-token.tsx" debug > Component Token< / code >
2022-11-09 12:28:04 +08:00
2016-07-21 09:51:04 +08:00
## API
2019-05-26 13:18:51 +08:00
| Property | Description | Type | Default | Version |
| --- | --- | --- | --- | --- |
2020-07-01 17:28:59 +08:00
| autoFocus | Whether get focus when component mounted | boolean | false | |
| defaultValue | The default value of slider. When `range` is false, use number, otherwise, use \[number, number] | number \| \[number, number] | 0 \| \[0, 0] | |
2022-11-19 22:56:58 +08:00
| disabled | If true, the slider will not be intractable | boolean | false | |
2023-02-03 15:16:27 +08:00
| keyboard | Support using keyboard to move handlers | boolean | true | 5.2.0+ |
2020-07-01 17:28:59 +08:00
| dots | Whether the thumb can drag over tick only | boolean | false | |
| included | Make effect when `marks` not null, true means containment and false means coordinative | boolean | true | |
2021-02-01 14:24:47 +08:00
| marks | Tick mark of Slider, type of key must be `number` , and must in closed interval \[min, max], each mark can declare its own style | object | { number: ReactNode } \| { number: { style: CSSProperties, label: ReactNode } } | |
2019-05-26 13:18:51 +08:00
| max | The maximum value the slider can slide to | number | 100 | |
2020-07-01 17:28:59 +08:00
| min | The minimum value the slider can slide to | number | 0 | |
| range | Dual thumb mode | boolean | false | |
| reverse | Reverse the component | boolean | false | |
| step | The granularity the slider can step through values. Must greater than 0, and be divided by (max - min) . When `marks` no null, `step` can be null | number \| null | 1 | |
2022-08-17 15:47:22 +08:00
| tooltip | The tooltip relate props | [tooltip ](#tooltip ) | - | 4.23.0 |
2020-10-21 10:33:43 +08:00
| value | The value of slider. When `range` is false, use number, otherwise, use \[number, number] | number \| \[number, number] | - | |
2020-07-01 17:28:59 +08:00
| vertical | If true, the slider will be vertical | boolean | false | |
| onAfterChange | Fire when onmouseup is fired | (value) => void | - | |
| onChange | Callback function that is fired when the user changes the slider's value | (value) => void | - | |
2023-02-07 09:55:20 +08:00
| trackStyle | The style of slider track (the active range) | CSSProperties | - | |
| railStyle | The style of slider rail (the background) | CSSProperties | - | |
2021-07-26 22:41:29 +08:00
| handleStyle | The style of slider handle | CSSProperties | - | |
2017-12-01 19:28:41 +08:00
2020-12-29 15:59:13 +08:00
### range
2022-08-17 15:47:22 +08:00
| Property | Description | Type | Default | Version |
| -------------- | ------------------------------- | ------- | ------- | ------- |
| draggableTrack | Whether range track can be drag | boolean | false | 4.10.0 |
### tooltip
2022-11-30 10:07:11 +08:00
| Property | Description | Type | Default | Version |
2021-03-01 19:20:48 +08:00
| --- | --- | --- | --- | --- |
2022-08-17 15:47:22 +08:00
| open | If true, Tooltip will show always, or it will not show anyway, even if dragging or hovering | boolean | - | 4.23.0 |
| placement | Set Tooltip display position. Ref [Tooltip ](/components/tooltip/ ) | string | - | 4.23.0 |
| getPopupContainer | The DOM container of the Tooltip, the default behavior is to create a div element in body | (triggerNode) => HTMLElement | () => document.body | 4.23.0 |
| formatter | Slider will pass its value to `formatter` , and display its value in Tooltip, and hide Tooltip when return value is null | value => ReactNode \| null | IDENTITY | 4.23.0 |
2020-12-29 15:59:13 +08:00
2017-12-01 19:28:41 +08:00
## Methods
2022-08-17 15:47:22 +08:00
| Name | Description | Version |
| ------- | ------------ | ------- |
| blur() | Remove focus | |
| focus() | Get focus | |
2023-04-11 10:25:24 +08:00
## Design Token
< ComponentTokenTable component = "Slider" > < / ComponentTokenTable >