Skip to content

Notas importantes ​

1. get() retorna strings ​

Usar get(true) para obtener valores numericos:

js
this.$refs.slider.get();     // → "50.00"
this.$refs.slider.get(true); // → 50

2. Sliders verticales necesitan altura CSS ​

vue
<Slider
    v-model="value"
    :range="{ min: 0, max: 100 }"
    orientation="vertical"
    style="height: 200px"
/>

Sin una altura explicita, el slider vertical no se renderiza correctamente.

3. Connect con multiples handles ​

'lower' y 'upper' solo funcionan con 1 handle. Para 2 o mas handles, usar un array de booleans con longitud = handles + 1:

js
// 1 handle: string ok
connect: 'lower'

// 2 handles: array de 3
connect: [true, true, false]  // barra antes y entre, no despues

// 3 handles: array de 4
connect: [false, true, true, false]  // barras entre handles

4. reset() solo resetea valores ​

reset() vuelve a los valores de start, pero no deshace cambios hechos via updateOptions (como cambios de rango o step).

5. v-model emite valores numericos ​

update:modelValue siempre emite los valores sin formatear, independientemente del format configurado.

6. change no se dispara con .set() ​

El evento change solo se dispara por interaccion directa del usuario. Al llamar .set() programaticamente, solo se disparan update y set.

7. unconstrained retorna valores en orden original ​

Cuando los handles se cruzan con behaviour="unconstrained", los valores se retornan en el orden original de los handles, aunque visualmente esten en orden inverso.

8. Step en rangos no lineales ​

El step global solo aplica al primer segmento. En rangos no lineales, definir step por segmento:

js
range: {
    min: [0, 10],        // step de 10
    '50%': [500, 100],   // step de 100
    max: 1000
}

9. Pips se renderizan como HTML ​

Si usas valores de usuario en el formatter de pips, necesitas escapar HTML para prevenir XSS.

Distribuido bajo la licencia MIT.