DDS/Components/MultiSelect

MultiSelect

Form

Multiple selection with chips for each chosen option.

Props

PropTypeDefaultDescription
modelValuestring[][]Selected values (v-model).
optionsDsMultiSelectOption[][]Options list.
placeholderstring"Select options…"Placeholder.
maxnumberundefinedMaximum number of selections.
disabledbooleanfalseDisable the component.

Examples

Multiple selection
TypeScript Vue
vue
<script setup>
const options = [
  { value: 'ts', label: 'TypeScript' },
  { value: 'vue', label: 'Vue' },
  { value: 'nuxt', label: 'Nuxt' },
  { value: 'tailwind', label: 'Tailwind' },
  { value: 'vite', label: 'Vite' },
]
const selected = ref(['ts', 'vue'])
</script>
<template>
  <DsMultiSelect v-model="selected" :options="options" :max="4" />
</template>

Skeleton

Use DsMultiSelectSkeleton as a loading placeholder while content is being fetched.

Default
vue
<DsMultiSelectSkeleton />

Accessibility

  • Each selection chip has a remove button with aria-label.
  • Keyboard navigation: Escape closes the list.