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.
|
|
|
|
|
2022-05-19 09:46:26 +08:00
|
|
|
```tsx
|
2022-05-23 14:37:16 +08:00
|
|
|
import { Alert, Calendar } from 'antd';
|
2022-05-19 09:46:26 +08:00
|
|
|
import type { Moment } from 'moment';
|
2017-03-03 15:26:23 +08:00
|
|
|
import moment from 'moment';
|
2022-05-23 14:37:16 +08:00
|
|
|
import React, { useState } from 'react';
|
2017-03-03 15:26:23 +08:00
|
|
|
|
2022-05-19 09:46:26 +08:00
|
|
|
const App: React.FC = () => {
|
|
|
|
const [value, setValue] = useState(moment('2017-01-25'));
|
|
|
|
const [selectedValue, setSelectedValue] = useState(moment('2017-01-25'));
|
|
|
|
|
|
|
|
const onSelect = (newValue: Moment) => {
|
|
|
|
setValue(newValue);
|
|
|
|
setSelectedValue(newValue);
|
2019-05-07 14:57:32 +08:00
|
|
|
};
|
2018-06-27 15:55:04 +08:00
|
|
|
|
2022-05-19 09:46:26 +08:00
|
|
|
const onPanelChange = (newValue: Moment) => {
|
|
|
|
setValue(newValue);
|
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 (
|
|
|
|
<>
|
2022-05-19 09:46:26 +08:00
|
|
|
<Alert message={`You selected date: ${selectedValue?.format('YYYY-MM-DD')}`} />
|
|
|
|
<Calendar value={value} onSelect={onSelect} onPanelChange={onPanelChange} />
|
2022-05-10 13:00:31 +08:00
|
|
|
</>
|
|
|
|
);
|
|
|
|
};
|
2022-05-19 09:46:26 +08:00
|
|
|
|
|
|
|
export default App;
|
2019-05-07 14:57:32 +08:00
|
|
|
```
|