SearchBar 搜索栏
一般可位于 NavBar 下方,通过『取消按钮』退出激活状态。规则
提供提示文案,帮助用户输入,eg:关键词、双十一特卖。
在搜索栏下方,可提供有用的标签文案,帮助用户通过点击直接完成输入,eg:最近搜索的内容。
代码演示
import { SearchBar } from 'antd-mobile';
const SearchBarExample = React.createClass({
getInitialState() {
return {
value: '美食',
};
},
onChange(value) {
this.setState({ value });
},
clear() {
this.setState({ value: '' });
},
render() {
return (<div>
<SearchBar placeholder="搜索" />
<p style={{ padding: 10, color: '#999' }}>显示取消按钮</p>
<SearchBar
value={this.state.value}
placeholder="搜索"
onSubmit={(value) => console.log(value, 'onSubmit')}
onClear={(value) => console.log(value, 'onClear')}
onFocus={() => console.log('onFocus')}
onBlur={() => console.log('onBlur')}
showCancelButton
onChange={this.onChange}
/>
</div>);
},
});
ReactDOM.render(<SearchBarExample />, mountNode);
API ( 适用平台:WEB、React-Native )
成员 | 说明 | 类型 | 默认值 |
---|---|---|---|
defaultValue | 搜索框的默认值 | String | |
value | 搜索框的当前值 | String | |
placeholder | placeholder | String | |
onSubmit | 点击键盘的 enter 会触发 submit 事件 | (val: string): void | |
onChange | change 事件的回调 | (val: string): void | |
onFocus | focus 事件的回调 | (): void | |
onBlur | blur 事件的回调 | (): void | |
onCancel | 点击取消 链接,只会触发 onCancel 事件, 组件不再主动清除内部的 value 以及触发 onChange 事件 | (val: string): void | |
showCancelButton | 是否一直显示取消 按钮 | bool | false |
cancelText | 定制取消 按钮的文字, | String | 取消 |
disabled | 禁用搜索栏,搜索栏只用于显示 | bool | false |
onClear(web only ) | 点击 clear 图标 | Func |