import React, { useState, useMemo, useCallback, useEffect } from 'react';
import DatePicker from '../../index';
import { Button, Form, withField } from '../../../index';
const FormDatePicker = withField(props => {
const { value, onChange, ...rest } = props;
const mValue = !value ? null : +value; // number => Date 传入组件
const mOnChange = (newValue, newDate) => {
// 直接用第2个参数更方便
// 当删除日期时,newDate为undefined
if (!newDate) {
props.onChange(undefined);
return;
}
// Date => number 反映给上层
props.onChange(+newDate);
};
return ;
});
const Container = ({ children }) => {
return
{children}
;
};
const Item = ({ children }) => (
{children}
);
function Demo(props = {}) {
const [value, setValue] = useState('2019-10-01');
const onChange = v => {
console.log(v);
setValue(v);
};
const createOnChangeWithLog = setFn => (str, date) => {
console.log(str, date);
if (typeof setFn === 'function') {
setFn(str);
}
};
const printArgs = (...args) => {
console.log('printArgs: ', ...args);
};
const [open, setOpen] = useState(true);
const [value2, setValue2] = useState(new Date('2019-10-02 8:30:02'));
const [value3] = useState(['2019-10-01', '20191002']);
const [value4, setValue4] = useState(['2019-10-01', '2019-10-09']);
const [value5] = useState(['2019-10-01', '20191109']);
const [value6, setValue6] = useState(['2019-10-01', '20191109']);
const [value7, setValue7] = useState(new Date('2019-11-02 11:32:11'));
const [value8, setValue8] = useState('2019-11-02 11:32:11');
return (
{/* 参数open受控
{
printArgs(status);
// setOpen(status);
}}
/>
*/}
-
date: value + onChange
-
dateTime: value
-
dateTime: value + random + onChange
-
dateTime: value + onChange + format
-
dateTime: value + onChange
-
dateTime: value + onConfirm + needConfirm
-
date multiple: value
-
date multiple: value + onChange
-
dateRange: value
-
dateRange: value + onChange
-
Form.DatePicker dateTime initValue + onChange
-
withFied DatePicker dateTime initValue + onChange
);
}
export default Demo;