Я новичок в приложенияхact.js, и у меня есть компонент DatePicker внутри моего класса форм. Я пытаюсь обновить и сохранить выбранную дату с помощью handleChange, но я не знаю, каково значение datepicker, и я не уверен, как это сделать. сделайте это, так как я импортировал его как компонент. Извините, если я не смог объяснить это очень хорошо, я новичок в приложениях реагирования
constructor() {
super();
this.state = {
formData: {
//i have other states here but this is the one i am having trouble with
//updating data
bookTime: {
data: "",
name: "bookTime",
category: "DatePicker",
everFocused: false,
isValid: true,
startDate: new Date(),
extra : {
label:"Randevu Tarihi*",
help: "Geçersiz Alan!"
}
},
}
};
this.handleChange = this.handleChange.bind(this);
}
Код этого класса формы не мой, но я пытаюсь добавить в него указатель даты и стараюсь не менять слишком много вещей, так как
это не мой код Метод handleChange не принадлежит мне, и это
почему я пытаюсь обновить свои данные с использованием этого формата.
handleChange(e) {
let val = e.target.value;
console.log(e.target.value)
let name = e.target.name;
let category = e.target.getAttribute("category");
let startDate = e.target.getAttribute("category");
this.setState(prevState => ({
formData: changeHandler(prevState.formData, val, name, category,startDate)
}));
}
это метод changeHandler;
export const changeHandler = (data, val, name, category) =>{
// Update the field value and get the field to validate (and name of that field)
Object.keys(data).forEach((key, idx) =>{
if (key === name) {
data[key].data = val;
return;
}
});
return findAndValidateField(data, name, category);
};
Этот div находится внутри моего класса формы, я не объявил className, потому что я не знаю, на что именно он влияет
<div
className={"" + (bookTime.isValid ? "" : " is-danger")}
>
<div>
<DatePicker className="turkish"
locale={tr}
selected={bookTime.startDate}
onChangeRaw={this.handleDateChangeRaw}
showTimeSelect
minTime={setHours(setMinutes(new Date(), 0), 7)}
maxTime={setHours(setMinutes(new Date(), 0), 22)}
minDate={subDays(new Date(), 0)}
timeFormat="HH:mm"
timeIntervals={60}
dateFormat="HH:mm,d MMMM yyyy"
timeCaption="Saat"
name={bookTime.name}
category = {bookTime.category}
onBlur={this.handleBlur}
onChange={this.handleChange}
/>
</div>
Я хочу, чтобы значение datedicker selecteddate обновлялось и сохранялось как другие состояния формы в форме