SearchBar搜索栏 - 图1

SearchBar 搜索框

基本用法

  1. import { SearchBar } from 'zarm';
  2. ReactDOM.render(
  3. <SearchBar
  4. onSubmit={(value) => {
  5. console.log(`搜索内容为${value}`);
  6. }}
  7. onFocus={() => {
  8. console.log('获取焦点');
  9. }}
  10. onChange={(value) => {
  11. console.log(value);
  12. }}
  13. onBlur={() => {
  14. console.log('失去焦点');
  15. }}
  16. onClear={() => {
  17. console.log('点击了清除');
  18. }}
  19. onCancel={() => {
  20. console.log('点击了取消');
  21. }}
  22. />
  23. , mountNode);

始终展示取消按钮

  1. import { SearchBar } from 'zarm';
  2. class Demo extends React.Component {
  3. state = {
  4. value: '',
  5. };
  6. render() {
  7. return (
  8. <>
  9. <SearchBar
  10. showCancel
  11. value={this.state.value}
  12. placeholder="搜索"
  13. cancelText="取消"
  14. onChange={(value) => {
  15. console.log(value);
  16. this.setState({
  17. value,
  18. });
  19. }}
  20. onClear={(value) => {
  21. console.log('清除了 -> ', value);
  22. this.setState({
  23. value: '',
  24. });
  25. }}
  26. />
  27. </>
  28. )
  29. }
  30. }
  31. ReactDOM.render(<Demo />, mountNode);

多形状

  1. import { SearchBar } from 'zarm';
  2. ReactDOM.render(
  3. <>
  4. <SearchBar shape="rect" />
  5. <SearchBar shape="round" />
  6. </>
  7. , mountNode);

手动获取焦点

  1. import { SearchBar, Button } from 'zarm';
  2. class Demo extends React.Component {
  3. render() {
  4. return (
  5. <>
  6. <SearchBar ref={(ref) => { this.manualFocus = ref; }} />
  7. <div className="button-wrap">
  8. <Button theme="primary" size="xs" shape="radius" onClick={() => { this.manualFocus.focus(); }}>点击获取焦点</Button>
  9. </div>
  10. </>
  11. )
  12. }
  13. }
  14. ReactDOM.render(<Demo />, mountNode);

API

属性类型默认值说明
placeholderstring'搜索'占位符
valuestring-
defaultValuestring-初始值
shapestring'radius'形状,可选值 rect, radius, round
disabledbooleanfalse是否禁用
showCancelbooleanfalse是否一直展示取消按钮
cancelTextstring'取消'取消按钮显示的内容
maxLengthnumber-输入字数上限
clearablebooleantrue是否提供清空输入框功能
onChange(value?: string) => void-值变化时触发的回调函数
onSubmit(value?: string) => void-提交时触发的回调函数
onFocus() => void-获取焦点时触发的回调函数
onBlur() => void-失去焦点时触发的回调函数
onClear() => void-点击清除按钮时触发的回调函数
onCancel() => void-点击取消时触发的回调函数