minDate props 覆盖 Material-ui Datepicker 的 null 状态值

Posted

技术标签:

【中文标题】minDate props 覆盖 Material-ui Datepicker 的 null 状态值【英文标题】:minDate props overrides the null state value for Material-ui Datepicker 【发布时间】:2021-09-02 16:26:57 【问题描述】:

我有一个组件,其中 material-ui Datepicker 中的 minDate 覆盖空值并将 minDate 设为选定值。 不仅如此,它甚至为此触发了 onChange 函数。我的组件调用(selectedDate 的初始状态为 null):

<DatePicker
disablePast
disableToolbar
autoOk
variant='static'
format='MMMM dd, yyyy'
value=selectedDate
onChange=onChange
minDate=startDate || new Date()
/>

使用此 minDate 值触发 onChange 会导致设置日期。 我尝试添加 onClick 事件,以便区分用户单击和 minDate 强制,但这不起作用。即使有一种方法可以区分用户点击和 minDate 强制,我也可以在此基础上进行构建。请帮忙。

【问题讨论】:

您尝试过 KeyboardDatePicker 吗?参考material-ui.com/components/pickers 【参考方案1】:

而不是通过引用调用您的 onChange 函数。尝试像这样包装它一个箭头函数

onChange=(e) => onChange(e)

我在这里使用 e 作为事件对象。使用这个匿名函数,它应该只在实际输入更改时触发。

【讨论】:

以上是关于minDate props 覆盖 Material-ui Datepicker 的 null 状态值的主要内容,如果未能解决你的问题,请参考以下文章

如何覆盖 Material-UI MenuItem 选择的背景颜色?

在一个组件中使用 formik-material-ui TextField 和 material-ui TextField 时出现“警告:Prop `className` 不匹配...”

当没有覆盖形式时,角度2检查有效性

我如何设置作为prop传递的material-ui图标的样式

Reactjs Material:如何将 props 传递给 reactjs 材质对话框

React 和 Material UI,对 props 和组件嵌套的大致了解