ant-design/components/auto-complete/demo/certain-category.md
偏右 55bbe3d113 docs: fix auto complete demo (#20946)
* docs: fix and refactor AutoComplete demo

*  update snapshot

* fix lint
2020-01-17 11:39:31 +08:00

2.4 KiB

order title
4
zh-CN en-US
查询模式 - 确定类目 Lookup-Patterns - Certain Category

zh-CN

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

en-US

Demonstration of Lookup Patterns: Certain Category. Basic Usage, set options of autocomplete with options property.

import { Input, AutoComplete } from 'antd';
import { UserOutlined } from '@ant-design/icons';

const { Option, OptGroup } = AutoComplete;

function renderTitle(title: string) {
  return (
    <span>
      {title}
      <a
        style={{ float: 'right' }}
        href="https://www.google.com/search?q=antd"
        target="_blank"
        rel="noopener noreferrer"
      >
        more
      </a>
    </span>
  );
}

function renderItem(title: string, count: number) {
  return {
    value: title,
    label: (
      <div
        style={{
          display: 'flex',
          justifyContent: 'space-between',
        }}
      >
        {title}
        <span>
          <UserOutlined /> {count}
        </span>
      </div>
    ),
  };
}

const options = [
  {
    label: renderTitle('Libraries'),
    options: [renderItem('AntDesign', 10000), renderItem('AntDesign UI', 10600)],
  },
  {
    label: renderTitle('Solutions'),
    options: [renderItem('AntDesign UI FAQ', 60100), renderItem('AntDesign FAQ', 30010)],
  },
  {
    label: renderTitle('Articles'),
    options: [renderItem('AntDesign design language', 100000)],
  },
];

function Complete() {
  return (
    <AutoComplete
      dropdownClassName="certain-category-search-dropdown"
      dropdownMatchSelectWidth={500}
      style={{ width: 250 }}
      options={options}
    >
      <Input.Search
        size="large"
        placeholder="input here"
      />
    </AutoComplete>
  );
}

ReactDOM.render(<Complete />, mountNode);
.certain-category-search-dropdown .ant-select-dropdown-menu-item-group-title {
  color: #666;
  font-weight: bold;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item-group {
  border-bottom: 1px solid #f6f6f6;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item {
  padding-left: 16px;
}

.certain-category-search-dropdown .ant-select-dropdown-menu-item.show-all {
  text-align: center;
  cursor: default;
}

.certain-category-search-dropdown .ant-select-dropdown-menu {
  max-height: 300px;
}