package examples import "github.com/axadrn/shadcn-templ/v2/components/slider"package examples import "github.com/axadrn/shadcn-templ/v2/components/slider" templ SliderDemo() { @slider.Slider(slider.Props{ Value: []float64{75}, Max: 100, Step: 1, Class: "mx-auto w-full max-w-xs", })}Installation
Usage
Range
Use an array with two values for a range slider.
package examples import "github.com/axadrn/shadcn-templ/v2/components/slider"package examples import "github.com/axadrn/shadcn-templ/v2/components/slider" templ SliderRange() { @slider.Slider(slider.Props{ Value: []float64{25, 50}, Max: 100, Step: 5, Class: "mx-auto w-full max-w-xs", })}Multiple Thumbs
Use an array with multiple values for multiple thumbs.
package examples import "github.com/axadrn/shadcn-templ/v2/components/slider"package examples import "github.com/axadrn/shadcn-templ/v2/components/slider" templ SliderMultiple() { @slider.Slider(slider.Props{ Value: []float64{10, 20, 70}, Max: 100, Step: 10, Class: "mx-auto w-full max-w-xs", })}Vertical
Use Orientation: slider.OrientationVertical for a vertical slider.
package examples import "github.com/axadrn/shadcn-templ/v2/components/slider"package examples import "github.com/axadrn/shadcn-templ/v2/components/slider" templ SliderVertical() { <div class="mx-auto flex w-full max-w-xs items-center justify-center gap-6"> @slider.Slider(slider.Props{ Value: []float64{50}, Max: 100, Step: 1, Orientation: slider.OrientationVertical, Class: "h-40", }) @slider.Slider(slider.Props{ Value: []float64{25}, Max: 100, Step: 1, Orientation: slider.OrientationVertical, Class: "h-40", }) </div>}Controlled
0.3, 0.7
package examples import (package examples import ( "github.com/axadrn/shadcn-templ/v2/components/label" "github.com/axadrn/shadcn-templ/v2/components/slider") templ SliderControlled() { <div class="mx-auto grid w-full max-w-xs gap-3" data-slider-controlled-demo> <div class="flex items-center justify-between gap-2"> @label.Label(label.Props{For: "slider-demo-temperature"}) { Temperature } <span class="text-sm text-muted-foreground" data-value>0.3, 0.7</span> </div> @slider.Slider(slider.Props{ ID: "slider-demo-temperature", Value: []float64{0.3, 0.7}, Min: 0, Max: 1, Step: 0.1, }) </div> <script> // The vanilla pendant of the demo's React state. (() => { const demo = document.querySelector("[data-slider-controlled-demo]"); demo.addEventListener("slider-change", (e) => { demo.querySelector("[data-value]").textContent = e.detail.values.join(", "); }); })(); </script>}Disabled
Use the Disabled prop to disable the slider.
package examples import "github.com/axadrn/shadcn-templ/v2/components/slider"package examples import "github.com/axadrn/shadcn-templ/v2/components/slider" templ SliderDisabled() { @slider.Slider(slider.Props{ Value: []float64{50}, Max: 100, Step: 1, Disabled: true, Class: "mx-auto w-full max-w-xs", })}API Reference
Slider
The Slider component renders one draggable thumb per value on a shared track.