Skip to main content

Select 选择器

使用场景#

代替原生 select 元素。

单选与多选#

Select 支持以下两种方式来开启多选模式:

  • 设置 multiple={true}
  • 使用 <Select.Multi /> 组件

在 TypeScript 项目中,我们推荐使用组件来切换单选(Select.Single)和多选(Select.Multi),类型提示和检查将更准确。

示例#

基本示例#

请选择
noInline

整行选择器#

请选择
noInline

轻量选择#

请选择
noInline

搜索#

请选择
inline

大数据量#

请选择
inline

错误状态#

请选择
noInline

多选#

请选择
inline

API#

Select.SingleSelect.Multi 的区别仅在于 value 的类型不同(defaultValue, onChange 的类型也有相应的区别),其他 props 都相同。

字段描述
defaultValuestring | string[]
valuestring | string[]
onChange(nextValue: string | string[], detail: {}) => void
multipleboolean
是否多选
disabledboolean
是否禁用
dataSourceArray<string | { label, value }>
数据源
外观
sizestring
选择器尺寸
styleCSSProperties
classNamestring
placeholderstring
选择器值为空时,trigger 上的占位文本
hasArrowboolean
是否有下拉箭头
fillboolean
选择器宽度是否占满容器
shape"simple" | "solid"
选择器形状
hasClearboolean
是否有清除按钮
status"normal" | "error" | "success" | "warning"
选择器状态
containerPropsHTMLAttributes<HTMLDivElement>
弹层
visibleboolean
弹层是否打开
onRequestClose(reason?: any) => void
defaultVisibleboolean
弹层是否默认打开
onRequestOpen(reason?: any) => void
autoWidthboolean = true
autoHeightboolean = true
autoScrollToFirstItemWhenOpenboolean = true
选择器弹层被打开时,是否自动滚动到第一个选中的元素
autoCloseAfterSelectboolean
选择元素时,是否自动关闭弹层。 单选模式下默认为 true,多选模式下默认为 false
popupPropsPopupProps
透传给 Popup 组件的 props
搜索
showSearchboolean
是否支持搜索功能
searchValuestring
搜索关键字
defaultSearchValuestring
非受控用法,默认的搜索关键字
onSearch(nextSearchValue: string, detail: { event: any; }) => void
关键字修改回调
notFoundContentReactNode
搜索结果为空时的展示内容
interface SelectItem {
value: string;
label?: React.ReactNode;
/** 是否禁用交互 */
disabled?: boolean;
}
Copyright © 2021 Alibaba Inc.
Built with ❤️ by hema-FE.