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;