You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MUI X DatePicker v6中disableMaskedInput属性的替代方案是什么?

MUI X DatePicker v6替代v5 disableMaskedInput属性方案

MUI X DatePicker从v5升级到v6后,原disableMaskedInput属性被移除,要实现“点击文本框时移除掩码、自由输入日期”的效果,可通过以下方案替代:

核心替代方案

v6中日期输入的掩码由mask属性控制,默认会根据inputFormat自动生成掩码。要实现v5中disableMaskedInput的效果,直接设置mask={null}即可完全关闭掩码功能,同时配合inputFormat定义日期的显示格式。

修改后的完整代码

针对你提供的v6代码,调整后如下:

<LocalizationProvider dateAdapter={AdapterLuxon} adapterLocale={language}>
  <DatePicker
    disablePast
    mask={null} // 替代disableMaskedInput,关闭掩码
    inputFormat="yyyy-MM-dd" // 按需求设置日期格式(比如"MM/dd/yyyy")
    slots={{
      openPickerIcon: () => <IconCalendar size={20} color={TakeTurnsColors.grayButton} />,
    }}
    value={date}
    onChange={(date: DateTime) => setDate(date)}
    slotProps={{
      textField: {
        sx: {
          // 你的样式配置
        },
        inputProps: {
          placeholder: t("deadlinePlaceholder"),
          inputMode: "text", // 确保输入框以纯文本模式交互
        },
      },
    }}
  />
</LocalizationProvider>

进阶场景:点击才移除掩码

如果需要保持默认显示掩码,仅在点击输入框时移除,可通过状态控制mask属性的切换:

import { useState } from 'react';

// ...

const [isInputFocused, setIsInputFocused] = useState(false);

<LocalizationProvider dateAdapter={AdapterLuxon} adapterLocale={language}>
  <DatePicker
    disablePast
    mask={isInputFocused ? null : "__.__.____"} // 焦点时关闭掩码,失焦恢复
    inputFormat="yyyy-MM-dd"
    slots={{
      openPickerIcon: () => <IconCalendar size={20} color={TakeTurnsColors.grayButton} />,
    }}
    value={date}
    onChange={(date: DateTime) => setDate(date)}
    slotProps={{
      textField: {
        sx: {
          // 你的样式配置
        },
        inputProps: {
          placeholder: t("deadlinePlaceholder"),
        },
        onFocus: () => setIsInputFocused(true),
        onBlur: () => setIsInputFocused(false),
      },
    }}
  />
</LocalizationProvider>

内容的提问来源于stack exchange,提问作者Frédéric JAMMES

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 18:15:27