Selectores

Multi Selector

Un componente de seleccion multiple desplegable con badges, busqueda, limpieza, opciones agrupadas y renderizado personalizado de opciones.
Tests
0%

Uso

El componente SMultiSelector renderiza un selector multiple desplegable. Usa v-model para enlazar los valores seleccionados como un arreglo. Pasa un arreglo de opciones a traves de la prop options. Los valores seleccionados se muestran como badges dentro del boton.

Busqueda

Habilita la prop search para permitir filtrar opciones por texto. Usa el evento query para manejar el filtrado externamente.

Limpiable

La prop clearable agrega un boton de limpieza que reinicia todos los valores seleccionados al hacer clic.

Removible

La prop removable agrega un boton de eliminar a cada badge, permitiendo deseleccionar elementos individuales directamente desde el area del boton.

Compacto

La prop compact reemplaza los badges con un texto resumen mostrando el numero de selecciones (ej. "3 selecciones").

Conteo

La prop count limita el numero de badges visibles. Cuando hay mas elementos seleccionados, se muestra un badge "+N". Por defecto es 3.

Lista de badges

La prop badgeList muestra una lista de badges removibles dentro del encabezado del desplegable, permitiendo a los usuarios ver y gestionar todas las selecciones dentro del area del dropdown.

Bordes redondeados

La prop rounded controla el radio de borde del boton del selector.

Deshabilitado

La prop disabled previene la interaccion del usuario con el selector.

Error

La prop error aplica estilos de error para indicar una falla de validacion.

Cargando

La prop loading muestra un indicador de carga dentro del selector.

Opciones de objetos

Cuando las opciones son objetos, usa optionLabel para especificar la propiedad de visualizacion y optionValue para especificar la propiedad del valor usada para la comparacion.

Opciones agrupadas

Usa optionGroupLabel y optionGroupItems para renderizar opciones organizadas en grupos.

Opcion personalizada

Usa el slot option para personalizar como se renderiza cada opcion en el desplegable.

Props

PropTipoDefaultDescripcion
modelValue(Record<string, any> | string)[]-Los valores seleccionados (usar con v-model)
options(Record<string, any> | string)[]-Arreglo de opciones disponibles
placeholderstring-Texto de marcador cuando no hay opcion seleccionada
optionLabelstring'label'Nombre de la propiedad a mostrar para opciones de objetos
optionValuestring-Nombre de la propiedad usada como valor para opciones de objetos
optionGroupLabelstring-Nombre de la propiedad para etiquetas de grupo
optionGroupItemsstring-Nombre de la propiedad para el arreglo de elementos del grupo
searchboolean-Habilita un input de busqueda en el desplegable
clearableboolean-Muestra un boton de limpieza cuando hay valores seleccionados
removableboolean-Agrega un boton de eliminar a cada badge
compactboolean-Muestra texto con el conteo de selecciones en lugar de badges
countnumber3Numero maximo de badges visibles antes de mostrar "+N"
badgeListboolean-Muestra una lista de badges dentro del encabezado del desplegable
handlerboolean-Muestra un boton de agregar cuando search esta habilitado
rounded'both' | 'left' | 'right' | 'none' | 'full''both'Estilo de radio de borde
disabledboolean-Deshabilita el selector
errorboolean-Aplica estilos de error
loadingboolean-Muestra un indicador de carga

Eventos

EventoPayloadDescripcion
update:modelValue(Record<string, any> | string)[] | undefinedSe emite cuando los valores seleccionados cambian
querystringSe emite cuando el valor del input de busqueda cambia
addRecord<string, any>Se emite cuando se agrega una nueva opcion a traves del handler

Slots

NombrePropsDescripcion
option{ option }Renderizado personalizado para cada opcion en el desplegable
Copyright © 2026