SearchBar 搜索栏
定义/Definition
苹果风格的搜索栏,带有一个自动隐藏的取消按钮。适合作为主搜索固定在页面顶部规则 / Rule
输入前搜索必须要有默认的搜索建议,如“请输入关键字”,”双十一口红特卖”
输入时提供搜索自动补全
输入时提供清除按钮、取消按钮
输入时提供历史记录
输入后提供回取消、上一步功能
业务场景需要时,搜索建议可凸显为匹配的部分,与其他部分做区分
代码演示
import { SearchBar } from 'antd-mobile';
import { createForm } from 'rc-form';
let SearchBarExample = React.createClass({
getInitialState() {
return {
value: '蚂蚁中台',
};
},
render() {
const { getFieldProps } = this.props.form;
console.log(this.props.form.getFieldsValue());
return (
<div>
<SearchBar
value="美食"
placeholder="搜索"
onSubmit={(value) => { console.log(`onSubmit${value}`); }}
onClear={() => { console.log('onClear'); }}
onCancel={() => { console.log('onCancel'); }}
onFocus={() => { console.log('onFocus'); }}
onBlur={() => { console.log('onBlur'); }}
/>
<SearchBar
{...getFieldProps('SearchBar2')}
placeholder="地图搜索"
onSubmit={(value) => { console.log(`onSubmit${value}`); }}
onClear={() => { console.log('onClear'); }}
onCancel={() => { console.log('onCancel'); }}
/>
<SearchBar
value=""
placeholder="取消按钮总是显示"
onSubmit={(value) => { console.log(`onSubmit${value}`); }}
onClear={() => { console.log('onClear'); }}
onCancel={() => { console.log('onCancel'); }}
showCancelButton
/>
<SearchBar placeholder="搜索框被禁用" disablSearch />
</div>
);
},
});
SearchBarExample = createForm()(SearchBarExample);
ReactDOM.render(<SearchBarExample />, mountNode);
API
SearchBar
成员 | 说明 | 类型 | 默认值 |
---|---|---|---|
value | 搜索框的默认值 | String | |
placeholder | placeholder | String | |
onSubmit | 点击键盘的enter会触发submit事件 | Func | |
onChange | change事件的回调 | Func | |
onFocus | focus事件的回调 | Func | |
onBlur | blur事件的回调 | Func | |
onClear | 点击clear图标 | Func | |
showCancelButton | 是否一直显示取消 按钮 | bool | false |
cancelTxt | 定制取消 按钮的文字, | bool | 取消 |
disablSearch | 禁用搜索栏,搜索栏只用于显示 | bool | false |