2018-12-10 22:41:22 +08:00
|
|
|
---
|
|
|
|
order: 22
|
|
|
|
title:
|
2018-12-11 18:57:53 +08:00
|
|
|
zh-CN: 隐藏已选择选项
|
2018-12-10 22:41:22 +08:00
|
|
|
en-US: Hide Already Selected
|
|
|
|
---
|
|
|
|
|
|
|
|
## zh-CN
|
|
|
|
|
|
|
|
隐藏下拉列表中已选择的选项。
|
|
|
|
|
|
|
|
## en-US
|
|
|
|
|
|
|
|
Hide already selected options in the dropdown.
|
|
|
|
|
2022-05-19 09:46:26 +08:00
|
|
|
```tsx
|
2018-12-10 22:41:22 +08:00
|
|
|
import { Select } from 'antd';
|
2022-05-21 22:14:15 +08:00
|
|
|
import React, { useState } from 'react';
|
2018-12-10 22:41:22 +08:00
|
|
|
|
|
|
|
const OPTIONS = ['Apples', 'Nails', 'Bananas', 'Helicopters'];
|
|
|
|
|
2022-05-19 09:46:26 +08:00
|
|
|
const App: React.FC = () => {
|
|
|
|
const [selectedItems, setSelectedItems] = useState<string[]>([]);
|
|
|
|
|
|
|
|
const filteredOptions = OPTIONS.filter(o => !selectedItems.includes(o));
|
|
|
|
|
|
|
|
return (
|
|
|
|
<Select
|
|
|
|
mode="multiple"
|
|
|
|
placeholder="Inserted are removed"
|
|
|
|
value={selectedItems}
|
|
|
|
onChange={setSelectedItems}
|
|
|
|
style={{ width: '100%' }}
|
|
|
|
>
|
|
|
|
{filteredOptions.map(item => (
|
|
|
|
<Select.Option key={item} value={item}>
|
|
|
|
{item}
|
|
|
|
</Select.Option>
|
|
|
|
))}
|
|
|
|
</Select>
|
|
|
|
);
|
|
|
|
};
|
|
|
|
|
|
|
|
export default App;
|
2019-05-07 14:57:32 +08:00
|
|
|
```
|