Skip to Content
DocsCloud UI BusinessProMultiSelect

ProMultiSelect

An enhanced multi-select component with search, select all functionality, overflow handling, and pill-based selection display.

Import

import { ProMultiSelect } from '@tidbcloud/uikit/biz'

Basic Usage

import { useState } from 'react' import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { const [value, setValue] = useState([]) return ( <ProMultiSelect data={[ { value: 'react', label: 'React' }, { value: 'vue', label: 'Vue' }, { value: 'angular', label: 'Angular' }, { value: 'svelte', label: 'Svelte' } ]} value={value} onChange={setValue} placeholder="Select frameworks" /> ) }
import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return <ProMultiSelect data={frameworks} searchable placeholder="Search and select" /> }

With Select All

import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return ( <ProMultiSelect data={frameworks} showSelectAll selectAllLabel="Select All Frameworks" placeholder="Select frameworks" /> ) }

With Max Values

import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return <ProMultiSelect data={frameworks} maxValues={3} placeholder="Select up to 3" /> }

Clearable

import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return <ProMultiSelect data={frameworks} clearable placeholder="Select frameworks" /> }

With Label and Error

import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return ( <ProMultiSelect data={frameworks} label="Frameworks" error="Please select at least one framework" placeholder="Select frameworks" /> ) }

Custom Max Options Display

import { ProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return <ProMultiSelect data={frameworks} maxDisplayOptions={2} placeholder="Select frameworks" /> }

With Form

import { Form, FormProMultiSelect } from '@tidbcloud/uikit/biz' function Demo() { return ( <Form onSubmit={(data) => console.log(data)}> <FormProMultiSelect name="frameworks" label="Frameworks" data={frameworks} rules={{ required: 'Please select at least one framework' }} /> </Form> ) }

Props

PropTypeDefaultDescription
dataComboboxData-Select options
valuestring[]-Selected values
defaultValuestring[]-Default selected values
onChange(value: string[]) => void-Change handler
maxDisplayOptionsnumber-Max options to show in input
searchableboolean-Enable search
searchValuestring-Controlled search value
defaultSearchValuestring-Default search value
onSearchChange(value: string) => void-Search change handler
maxValuesnumberInfinityMax selections allowed
readOnlyboolean-Read-only mode
disabledboolean-Disabled state
sizeMantineSize-Component size
wnumber | string-Component width
placeholderstring-Input placeholder
clearableboolean-Allow clearing
labelReactNode-Input label
emptyTextstring-Empty state message
dropdownOpenedboolean-Controlled dropdown state
maxDropdownHeightnumber200Max dropdown height
errorReactNode-Error message
loadingboolean-Loading state
showSelectAllboolean-Show select all option
selectAllLabelstring'All'Select all label
onSubmit(options: ComboboxItem[]) => void-Option submit handler
renderOption(option) => ReactNode-Custom option renderer
filter(value, options) => ComboboxItem[]-Custom filter function
onClear() => void-Clear handler
Last updated on