JGuang

搜索框

SearchBar · Ant Design Mobile

交互预览
npm install antd-mobile@5.43.0

搜索框 SearchBar

搜索场景的输入框组件。

安装

npm install antd-mobile@5.43.0

antd-mobile 是移动网页组件库,不是 React Native 或小程序组件。React 19 项目需在入口用 unstableSetRender 注册 createRoot,否则 Toast、Dialog 等命令式 API 无法渲染;深色模式通过 <html data-prefers-color-scheme="dark"> 切换。

示例来自 Ant Design Mobile 官方仓库(MIT),固定在 npm 5.43.0 对应的提交;示例中的 DemoBlock 等展示辅助组件由 JGuang 重写,不属于 antd-mobile 的 API。

搜索场景的输入框组件。

何时使用

在信息池中缩小范围,快速而轻松地获取目标信息。

示例

属性

属性说明类型默认值
cancelText取消按钮的文案string'取消'
clearOnCancel点击取消按钮后是否清空输入框booleantrue
clearable是否启用清除图标,点击清除图标后会清空输入框booleantrue
searchIcon自定义搜索图标ReactNode<SearchOutline />
maxLength输入的最大字符数number-
onBlur输入框失去焦点时触发(e: React.FocusEvent<HTMLInputElement>) => void-
onCancel点击取消按钮时触发() => void-
onChange输入框内容变化时触发(value: string) => void-
onClear点击清除按钮后触发() => void-
onFocus输入框获得焦点时触发(e: React.FocusEvent<HTMLInputElement>) => void-
onSearch输入框回车时触发(value: string) => void-
onlyShowClearWhenFocus如果 true,那么只有输入框聚焦时才会显示清除按钮;如果为 false,那么输入框失去焦点后依旧会显示清除按钮booleanfalse
placeholder提示文本string-
showCancelButton是否在搜索框右侧显示取消按钮boolean | ((focus: boolean, value: string) => boolean)false
value输入值string-

此外还支持以下原生属性:onCompositionStart onCompositionEnd autoFocus

CSS 变量

属性说明默认值
--background背景色#f5f5f5
--border-radius圆角6px
--height高度32px
--padding-left搜索框的左侧 padding8px
--placeholder-colorplaceholder 文字颜色var(--adm-color-weak)

Ref

同 Input

FAQ

键盘按钮没有显示"搜索",而是"返回"

属性 enterkeyhinit 只能在 Android 版本 4.4.5 及以上或者 IOS 版本 13.4 及以上使用,更多细节见此 issue