Этот код работает нормально, потому что параметры находятся за пределами:
import React from 'react';
import Select from 'react-select';
const options = [
{ value: 'chocolate', label: 'Chocolate' },
{ value: 'strawberry', label: 'Strawberry' },
{ value: 'vanilla', label: 'Vanilla' },
];
class App extends React.Component {
state = {
selectedOption: null,
};
handleChange = selectedOption => {
this.setState(
{ selectedOption },
() => console.log(`Option selected:`, this.state.selectedOption)
);
};
render() {
return (
<Select
value={this.state.selectedOption}
onChange={this.handleChange}
options={options}
/>
);
}
}
, но этот код не работает, потому что параметры находятся внутри состояния
import React from 'react';
import Select from 'react-select';
class App extends React.Component {
state = {
options: [
{ value: 'chocolate', label: 'Chocolate' },
{ value: 'strawberry', label: 'Strawberry' },
{ value: 'vanilla', label: 'Vanilla' },
],
selectedOption: null,
};
handleChange = selectedOption => {
this.setState(
{ selectedOption },
() => console.log(`Option selected:`, this.state.selectedOption)
);
};
render() {
return (
<Select
value={this.state.selectedOption}
onChange={this.handleChange}
options={this.state.options}
/>
);
}
}
Если я использую параметры из состояния, консольный журнал внутри handleChange не возвращает selectedOption. Скажите пожалуйста, почему? Я хочу использовать этот плагин с параметрами из состояния ...