logoNamu Design

⌘ K
  • 设计
  • 研发
  • 组件
  • 博客
  • 资源
  • 国内镜像
1.0.0
  • 组件总览
  • 通用
    • Button按钮
    • FloatButton悬浮按钮New
    • Icon图标
    • Typography排版
  • 布局
    • Divider分割线
    • Grid栅格
    • Layout布局
    • Space间距
  • 导航
    • Anchor锚点
    • Breadcrumb面包屑
    • Dropdown下拉菜单
    • Menu导航菜单
    • Pagination分页
    • Steps步骤条
  • 数据录入
    • AutoComplete自动完成
    • Cascader级联选择
    • Checkbox多选框
    • ColorPicker颜色选择器New
    • DatePicker日期选择框
    • Form表单
    • Input输入框
    • InputNumber数字输入框
    • Mentions提及
    • Radio单选框
    • Rate评分
    • Select选择器
    • Slider滑动输入条
    • Switch开关
    • TimePicker时间选择框
    • Transfer穿梭框
    • TreeSelect树选择
    • Upload上传
  • 数据展示
    • Avatar头像
    • Badge徽标数
    • Calendar日历
    • Card卡片
    • Carousel走马灯
    • Collapse折叠面板
    • Descriptions描述列表
    • Empty空状态
    • Image图片
    • List列表
    • Popover气泡卡片
    • QRCode二维码New
    • Segmented分段控制器
    • Statistic统计数值
    • Table表格
    • Tabs标签页
    • Tag标签
    • Timeline时间轴
    • Tooltip文字提示
    • Tour漫游式引导New
    • Tree树形控件
  • 反馈
    • Alert警告提示
    • Drawer抽屉
    • Message全局提示
    • Modal对话框
    • Notification通知提醒框
    • Popconfirm气泡确认框
    • Progress进度条
    • Result结果
    • Skeleton骨架屏
    • Spin加载中
    • Watermark水印New
  • 其他
    • Affix固钉
    • App包裹组件New
    • ConfigProvider全局化配置
何时使用
代码演示
基本使用
自定义选项
自定义输入组件
不区分大小写
查询模式 - 确定类目
查询模式 - 不确定类目
自定义状态
无边框
自定义清除按钮
API
方法
Design Token
FAQ
为何受控状态下使用 onSearch 无法输入中文?
为何 options 为空时,受控 open 展开不会显示下拉菜单?

AutoComplete
自动完成

  • Steps步骤条Cascader级联选择

    相关资源

    Namu Design Charts
    Namu Design Pro
    Namu Design Pro Components
    Namu Design Mobile
    Namu Design Mini
    Namu Design Landing-首页模板集
    Scaffolds-脚手架市场
    Umi-React 应用开发框架
    dumi-组件/文档研发工具
    qiankun-微前端框架
    ahooks-React Hooks 库
    Ant Motion-设计动效
    国内镜像站点 🇨🇳

    社区

    Awesome Namu Design
    Medium
    Twitter
    yuqueNamu Design 语雀专栏
    Namu Design 知乎专栏
    体验科技专栏
    seeconfSEE Conf-蚂蚁体验科技大会
    加入我们

    帮助

    GitHub
    更新日志
    常见问题
    报告 Bug
    议题
    讨论区
    StackOverflow
    SegmentFault

    Ant XTech更多产品

    yuque语雀-构建你的数字花园
    AntVAntV-数据可视化解决方案
    EggEgg-企业级 Node.js 框架
    kitchenKitchen-Sketch 工具集
    xtech蚂蚁体验科技
    主题编辑器
    Made with ❤ by
    蚂蚁集团和 Namu Design 开源社区

    输入框自动完成功能。

    何时使用

    • 需要一个输入框而不是选择器。
    • 需要输入建议/辅助提示。

    和 Select 的区别是:

    • AutoComplete 是一个带提示的文本输入框,用户可以自由输入,关键词是辅助输入。
    • Select 是在限定的可选项中进行选择,关键词是选择。

    代码演示

    input here


    control mode
    基本使用

    基本使用,通过 options 设置自动完成的数据源。

    expand codeexpand code
    自定义输入组件

    自定义输入组件。

    expand codeexpand code
    查询模式 - 确定类目

    查询模式: 确定类目 示例。

    expand codeexpand code
    自定义状态

    使用 status 为 AutoComplete 添加状态,可选 error 或者 warning。

    expand codeexpand code
    UnClearable


    Customized clear icon
    自定义清除按钮

    自定义清除按钮

    expand codeexpand code
    input here
    自定义选项

    可以返回自定义的 Option label

    expand codeexpand code
    try to type `b`
    不区分大小写

    不区分大小写的 AutoComplete

    expand codeexpand code
    查询模式 - 不确定类目

    查询模式: 不确定类目 示例。

    expand codeexpand code
    Borderless
    无边框

    没有边框。

    expand codeexpand code

    API

    通用属性参考:通用属性

    参数说明类型默认值版本
    allowClear支持清除boolean | { clearIcon?: ReactNode }false5.8.0: 支持对象形式
    autoFocus自动获取焦点booleanfalse
    backfill使用键盘选择选项的时候把选中项回填到输入框中booleanfalse
    bordered是否有边框booleantrue
    children (自动完成的数据源)自动完成的数据源React.ReactElement<OptionProps> | Array<React.ReactElement<OptionProps>>-
    children (自定义输入框)自定义输入框HTMLInputElement | HTMLTextAreaElement | React.ReactElement<InputProps><Input />
    defaultActiveFirstOption是否默认高亮第一个选项booleantrue
    defaultOpen是否默认展开下拉菜单boolean-
    defaultValue指定默认选中的条目string-
    disabled是否禁用booleanfalse
    popupClassName下拉菜单的 className 属性string-4.23.0
    dropdownMatchSelectWidth下拉菜单和选择器同宽。默认将设置 min-width,当值小于选择框宽度时会被忽略。false 时会关闭虚拟滚动boolean | numbertrue
    filterOption是否根据输入项进行筛选。当其为一个函数时,会接收 inputValue option 两个参数,当 option 符合筛选条件时,应返回 true,反之则返回 falseboolean | function(inputValue, option)true
    getPopupContainer菜单渲染父节点。默认渲染到 body 上,如果你遇到菜单滚动定位问题,试试修改为滚动的区域,并相对其定位。示例function(triggerNode)() => document.body
    notFoundContent当下拉列表为空时显示的内容ReactNode-
    open是否展开下拉菜单boolean-
    options数据化配置选项内容,相比 jsx 定义会获得更好的渲染性能{ label, value }[]-
    placeholder输入框提示string-
    status设置校验状态'error' | 'warning'-4.19.0
    value指定当前选中的条目string-
    onBlur失去焦点时的回调function()-
    onChange选中 option,或 input 的 value 变化时,调用此函数function(value)-
    onDropdownVisibleChange展开下拉菜单的回调function(open)-
    onFocus获得焦点时的回调function()-
    onSearch搜索补全项的时候调用function(value)-
    onSelect被选中时调用,参数为选中项的 value 值function(value, option)-
    onClear清除内容时的回调function-4.6.0

    方法

    名称描述版本
    blur()移除焦点
    focus()获取焦点

    Design Token

    组件 Token

    全局 Token

    FAQ

    为何受控状态下使用 onSearch 无法输入中文?

    请使用 onChange 进行受控管理。onSearch 触发于搜索输入,与 onChange 时机不同。此外,点击选项时也不会触发 onSearch 事件。

    相关 issue:#18230 #17916

    为何 options 为空时,受控 open 展开不会显示下拉菜单?

    AutoComplete 组件本质上是 Input 输入框的一种扩展,当 options 为空时,显示空文本会让用户误以为该组件不可操作,实际上它仍然可以进行文本输入操作。因此,为了避免给用户带来困惑,当 options 为空时,open 属性为 true 也不会展示下拉菜单,需要与 options 属性配合使用。