Так что в основном в моем приложении есть функция создания новых событий путем заполнения формы.
К сожалению, проблема в том, что у меня есть DayPicker
компонент с множественным выбором из https://react-day-picker.js.org/examples/selected-multiple и я хотел бы очистить его состояние при размонтировании, потому что я хочу иметь новый пустой календарь в каждой новой форме.Без этого DayPicker
прежнее состояние запоминается.
Я также использую redux-form
из https://redux -form.com / 7.3.0 / docs / gettingstarted.md /
Есть идеи, как мне этого добиться?
MultiDayPicker
import React, {Component} from 'react';
import DayPicker, {DateUtils} from 'react-day-picker';
import PropTypes from 'prop-types';
import 'react-day-picker/lib/style.css';
export default class MultiDayPicker extends Component {
state = {
selectedDays: []
};
handleDayClick = (day, {selected}) => {
const {selectedDays} = this.state;
if (selected) {
const selectedIndex = selectedDays.findIndex(selectedDay =>
DateUtils.isSameDay(selectedDay, day)
);
selectedDays.splice(selectedIndex, 1);
} else {
selectedDays.push(day);
}
this.setState({selectedDays});
this.props.input.onChange(selectedDays);
};
render() {
return (
<div>
<DayPicker
selectedDays={this.state.selectedDays}
onDayClick={this.handleDayClick}
/>
</div>
);
}
}