ant-design/components/auto-complete/demo/basic.md

65 lines
1.3 KiB
Markdown
Raw Normal View History

2016-07-25 17:46:45 +08:00
---
order: 0
2016-08-23 21:00:35 +08:00
title:
2016-07-25 17:46:45 +08:00
zh-CN: 基本使用
en-US: Basic Usage
---
## zh-CN
2020-09-04 16:56:53 +08:00
基本使用,通过 `options` 设置自动完成的数据源。
2016-07-25 17:46:45 +08:00
## en-US
Basic Usage, set data source of autocomplete with `options` property.
2016-07-25 17:46:45 +08:00
```tsx
2020-01-22 12:11:49 +08:00
import React, { useState } from 'react';
2016-07-25 17:46:45 +08:00
import { AutoComplete } from 'antd';
2020-01-21 16:21:37 +08:00
const mockVal = (str: string, repeat: number = 1) => {
return {
value: str.repeat(repeat),
};
2020-01-21 16:21:37 +08:00
};
2020-01-21 17:14:58 +08:00
const Complete: React.FC = () => {
2020-01-22 12:11:49 +08:00
const [value, setValue] = useState('');
const [options, setOptions] = useState<{ value: string }[]>([]);
2020-01-21 16:21:37 +08:00
const onSearch = (searchText: string) => {
setOptions(
!searchText ? [] : [mockVal(searchText), mockVal(searchText, 2), mockVal(searchText, 3)],
);
2019-05-07 14:57:32 +08:00
};
2020-01-21 16:21:37 +08:00
const onSelect = (data: string) => {
console.log('onSelect', data);
2019-05-07 14:57:32 +08:00
};
2020-01-21 16:21:37 +08:00
const onChange = (data: string) => {
setValue(data);
};
2020-01-21 16:21:37 +08:00
return (
<>
2020-01-21 16:21:37 +08:00
<AutoComplete
options={options}
style={{ width: 200 }}
onSelect={onSelect}
onSearch={onSearch}
placeholder="input here"
/>
<br />
<br />
<AutoComplete
value={value}
options={options}
style={{ width: 200 }}
onSelect={onSelect}
onSearch={onSearch}
onChange={onChange}
placeholder="control mode"
/>
</>
2020-01-21 16:21:37 +08:00
);
};
2016-07-25 17:46:45 +08:00
ReactDOM.render(<Complete />, mountNode);
2019-05-07 14:57:32 +08:00
```