Объединить все значения в Select of Antd - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть приложение с выбором. Я хочу объединить все значения из выбора, если я много раз сохранял значение выбора.

Например, если я выбрал фрукты, после этого я хочу иметь все значения, а затем еще одно, чтобы не переопределять каждый раз предыдущее значение, как сейчас.

const OPTIONS = ["Apples", "Nails", "Bananas", "Helicopters"];

class SelectWithHiddenSelectedOptions extends React.Component {
  state = {
    selectedItems: []
  };

  handleChange = selectedItems => {
    this.setState({ selectedItems });
  };
  save = () => {
    console.log(this.state.selectedItems);  // here i want to concatenate all values
  };
  render() {
    const { selectedItems } = this.state;
    const filteredOptions = OPTIONS.filter(o => !selectedItems.includes(o));
    return (
      <div>
        <Select
          placeholder="Inserted are removed"
          value={selectedItems}
          onChange={this.handleChange}
          style={{ width: "100%" }}
        >
          {filteredOptions.map(item => (
            <Select.Option key={item} value={item}>
              {item}
            </Select.Option>
          ))}
        </Select>
        <button onClick={this.save}>click</button>
        <h1>{this.selectedItems}</h1>
      </div>
    );
  }
}

Как этого добиться? ссылка на мое приложение: https://codesandbox.io/s/hide-already-selected-ant-design-demo-46ojt

1 Ответ

2 голосов
/ 01 апреля 2020

Добавить опору Режим со значением multiple будет работать

См. Муравей Выбрать документ

Режим
Установить режим выбора
Тип: несколько | теги

значение
Текущая выбранная опция.
Тип: строка | строка [], число | число [], LabeledValue | LabeledValue []

<Select
  mode='multiple'
  ...
/>

enter image description here

Edit Hide Already Selected - Ant Design Demo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...