---
url: "https://vueda.dev/v3/reference/api/vue/Slider.md"
title: "Slider"
---

# Slider

## Overview

A range slider built on Reka UI's SliderRoot, rendering a track, range fill, and draggable thumbs.

Theme entry: [Slider](/v3/reference/theming/keys/Slider.md)

## Props

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| <span id="prop-themeOverride">themeOverride</span> | `Object` |  | `null` | A partial ThemeObject keyed by component name, merged over this component's theme and provided to descendants. |
| <span id="prop-class">class</span> | `string\|array\|object` |  | `undefined` | Additional CSS classes to apply to the slider root. |
| <span id="prop-defaultValue">defaultValue</span> | `array` |  | `undefined` | The default value(s) when uncontrolled. |
| <span id="prop-modelValue">modelValue</span> | `array` |  | `undefined` | The controlled value(s) (used with v-model). |
| <span id="prop-disabled">disabled</span> | `boolean` |  | `undefined` | Whether the slider is disabled. |
| <span id="prop-orientation">orientation</span> | `string` |  | `undefined` | The orientation of the slider. |
| <span id="prop-dir">dir</span> | `string` |  | `undefined` | The reading direction. |
| <span id="prop-inverted">inverted</span> | `boolean` |  | `undefined` | Whether the slider is visually inverted. |
| <span id="prop-min">min</span> | `number` |  | `undefined` | The minimum value. |
| <span id="prop-max">max</span> | `number` |  | `undefined` | The maximum value. |
| <span id="prop-step">step</span> | `number` |  | `undefined` | The step increment between values. |
| <span id="prop-minStepsBetweenThumbs">minStepsBetweenThumbs</span> | `number` |  | `undefined` | The minimum number of steps between multiple thumbs. |
| <span id="prop-thumbAlignment">thumbAlignment</span> | `string` |  | `undefined` | How thumbs align relative to the track end. |
| <span id="prop-as">as</span> | `string\|object` |  | `undefined` | The element or component to render as. |
| <span id="prop-asChild">asChild</span> | `boolean` |  | `false` | When true, merges props onto the child element instead of rendering a wrapper. |
| <span id="prop-name">name</span> | `string` |  | `undefined` | The name submitted with a form. |
| <span id="prop-required">required</span> | `boolean` |  | `undefined` | Whether the field is required. |

## Events

| Name | Description |
| --- | --- |
| `update:modelValue` | Emitted when the value changes. |

[Full event reference](/v3/reference/api/vue/Slider/events.md)

## Source

`client/lib/controls/slider/Slider.vue`
