问题描述
我正在开发一个使用 Formik for React 的项目,特别是以下 NPM 包 - https://www.npmjs.com/package/formik-material-ui-pickers
我在此 npm 包中使用 CodeSandBox 链接/示例中的代码 -
https://codesandbox.io/s/915qlr56rp?file=/src/index.tsx:4770-4987
<Field component={TimePicker} name="time" label="Time" />
<Field component={DatePicker} name="date" label="Date" />
我的问题是,我怎样才能默认日期显示 DD-MM-YYYY 作为占位符以及默认显示时间,而不是在启动时出现日期和时间HH:MI:SS 作为占位符?
只有当用户选择日期和时间时,我才希望它显示和更新 Formik 的初始值。
我在 https://material-ui-pickers.dev/api/TimePicker 和 https://material-ui-pickers.dev/api/DatePicker 处检查了 doco,但看不到任何允许默认值或占位符值的内容。
解决方法
你需要做一个自定义的DatePicker并将格式放入其中
解决方案
const CustomDatePicker = ({...props}) => (
<DatePicker format="dd-MM-yyyy" {...props} />
);
<Field component={CustomDatePicker} name="date" label="Date" />
// Do similar for TimePicker