Я использую ant design 3 date time picker для моего проекта реакции, и я отключил, когда пользователь выбирает date/time
из present/future
и disable all the past dates
, он работает хорошо, но у меня есть некоторый конфликт с этой моей функцией.
здесь конфликт
когда я выбираю дату и время в будущем после отображения снова, нажмите кнопку даты на нижний колонтитул, поэтому я снова выбираю сегодняшнюю дату, отображаю будущее время с сегодняшней датой, любое решение для отключения select date
ссылка на кнопку
вы можете понять мой конфликт, пожалуйста, используйте блиц
вот мой код
interface AppProps { }
interface AppState {
name: string;
date: Date;
}
class App extends Component<AppProps, AppState> {
constructor(props) {
super(props);
this.state = {
name: 'React',
date: new Date()
};
}
//date disable
disabledDate(current: any) {
// Can not select days before today and today
//return current && current < moment().endOf('day');
return current && current < moment().startOf("day")
}
//time disable
getDisabledHours() {
var hours = [];
for (let i = 0; i < moment().hour(); i++) {
hours.push(i);
}
return hours;
}
//time disable
getDisabledMinutes = (selectedHour: any) => {
var minutes = [];
if (selectedHour === moment().hour()) {
for (var i = 0; i < moment().minute(); i++) {
minutes.push(i);
}
}
return minutes;
}
render() {
return (
<div>
<DatePicker
name="Date" disabledDate={this.disabledDate}
onChange={d => this.setState({date: d})}
style={{width: "100%"}}
showTime={{ disabledMinutes: moment().date() < moment(this.state.date).date() ? undefined : this.getDisabledMinutes,
disabledHours: moment().date() < moment(this.state.date).date() ? undefined : this.getDisabledHours}}
value={moment(this.state.date)}
/>
</div>
);
}
}