Есть несколько вещей, которые нужно сделать: вам нужен конструктор для определения состояния, и вам нужно обновить это состояние с выбранными значениями.
Демонстрация интерактивной песочницы
Определите ваше состояние с помощью конструктора, как ...
constructor(props) {
super();
this.state = {
selectedOptions: [],
};
}
И определите свой обработчик событий, как это.(Вы просили сохранить «метку», обычно это «метка», которая отображается, и «значение», которое сохраняется, но, в любом случае, как требуется ...) ...
handleChange = selectedOption => {
const state = this.state;
state.selectedOptions = [];
selectedOption.forEach((option) => {
state.selectedOptions.push(option.label);
});
this.setState(state);
console.log(`Options selected:`, JSON.stringify(state.selectedOptions, null, 4));
};
Здесь вы увидите вывод, подобный следующему ...
Options selected: [
"Chocolate"
]
Options selected: [
"Chocolate",
"Strawberry"
]
Как правило, многое нужно сделать для совместной работы функции render()
и состояния, и это всегда верно в ReactJS.
Но вы, похоже, используете React-Select
, который, похоже, автоматически справляется с некоторыми из этих задач: React-Select Github Page