2017-03-03 15:26:23 +08:00
|
|
|
---
|
|
|
|
order: 3
|
|
|
|
title:
|
|
|
|
zh-CN: 选择功能
|
|
|
|
en-US: Selectable Calendar
|
|
|
|
---
|
|
|
|
|
|
|
|
## zh-CN
|
|
|
|
|
|
|
|
一个通用的日历面板,支持年/月切换。
|
|
|
|
|
|
|
|
## en-US
|
|
|
|
|
|
|
|
A basic calendar component with Year/Month switch.
|
|
|
|
|
2019-05-07 14:57:32 +08:00
|
|
|
```jsx
|
2022-05-10 13:00:31 +08:00
|
|
|
import React, { useState } from 'react';
|
2017-03-03 15:26:23 +08:00
|
|
|
import { Calendar, Alert } from 'antd';
|
|
|
|
import moment from 'moment';
|
|
|
|
|
2022-05-10 13:00:31 +08:00
|
|
|
export default () => {
|
|
|
|
const [calendar, setCalendar] = useState({
|
2017-03-03 15:26:23 +08:00
|
|
|
value: moment('2017-01-25'),
|
|
|
|
selectedValue: moment('2017-01-25'),
|
2022-05-10 13:00:31 +08:00
|
|
|
});
|
2018-06-27 15:55:04 +08:00
|
|
|
|
2022-05-10 13:00:31 +08:00
|
|
|
const onSelect = value => {
|
|
|
|
setCalendar({
|
2017-03-03 15:26:23 +08:00
|
|
|
value,
|
|
|
|
selectedValue: value,
|
|
|
|
});
|
2019-05-07 14:57:32 +08:00
|
|
|
};
|
2018-06-27 15:55:04 +08:00
|
|
|
|
2022-05-10 13:00:31 +08:00
|
|
|
const onPanelChange = value => {
|
|
|
|
setCalendar({
|
|
|
|
...calendar,
|
|
|
|
value,
|
|
|
|
});
|
2019-05-07 14:57:32 +08:00
|
|
|
};
|
2018-06-27 15:55:04 +08:00
|
|
|
|
2022-05-10 13:00:31 +08:00
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<Alert
|
|
|
|
message={`You selected date: ${
|
|
|
|
calendar.selectedValue && calendar.selectedValue.format('YYYY-MM-DD')
|
|
|
|
}`}
|
|
|
|
/>
|
|
|
|
<Calendar value={calendar.value} onSelect={onSelect} onPanelChange={onPanelChange} />
|
|
|
|
</>
|
|
|
|
);
|
|
|
|
};
|
2019-05-07 14:57:32 +08:00
|
|
|
```
|