Здравствуйте! Есть вот такой код.
const [searchText, setSearchText] = useState({
tableField:'',searchText:'',searchСondition:''
})
const onChangeHandler = (e:any)=> {
setSearchText({...searchText, [e.target.name]:e.target.value})
console.log("LOOK THIS", searchText)
}
return(
<div className="container">
<div className="row">
<div className='col-md-3 mainSearcher'>
<select
className = "selected"
onChange={onChangeHandler}
name="tableField"
>
<option>Дата</option>
<option>Название</option>
<option>Количество</option>
<option>Расстояние</option>
</select>
</div>
<div className="col-md-3 mainSearcher">
<input
type='text'
name='searchText'
onChange={onChangeHandler}
className = "searched"
placeholder='Поиск'
>
</input>
</div>
<div className='col-md-3 mainSearcher'>
<select className="selected"
onChange={onChangeHandler}
name="searchСondition">
<option>Равно</option>
<option>Больше</option>
<option>Меньше</option>
<option>Содержит</option>
</select>
</div>
</div>
</div>
)
Проблема в том, что в стейт после ввода или выбора из поля в стейт ничего не добавляется. Добавление происходит при следующем действие, но добавляются старые данные.