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

如何修改MUI DesktopTimePicker点击文本框时的掩码文本?

修改MUI DesktopTimePicker的输入掩码

要解决点击文本框后显示hh:mm掩码不符合德语应用需求的问题,你可以通过以下方式调整:

直接自定义掩码(推荐)

给DesktopTimePicker组件添加mask属性,设置为你需要的德语风格掩码文本。比如保持和占位符一致的--:--,或者使用德语用户习惯的格式:

<LocalizationProvider dateAdapter={AdapterDateFns} adapterLocale={de}>
  <DesktopTimePicker
    mask="--:--" // 替换默认的hh:mm掩码
    value={date}
    minutesStep={1}
    disabled={props.disabled}
    onChange={(newValue) => {
      if (newValue) {
        try {
          const timeString = format(newValue, 'HH:mm');
          props.onChange(timeString);
        } catch (e) {
          props.onChange(undefined);
        }
      } else {
        props.onChange(undefined);
      }
    }}
    slots={{
      actionBar: undefined,
    }}
    slotProps={{
      textField: {
        placeholder: '-- : --',
        variant: 'standard',
        sx: {
          '& .MuiInputBase-input': {
            fontSize: 13,
            height: 40,
            paddingLeft: '15px',
            paddingRight: '15px',
            paddingTop: '0px',
            paddingBottom: '0px',
          },
          '& .MuiButtonBase-root': {
            margin: '0px',
            padding: '0px',
          },
          '& .MuiSvgIcon-root': {
            fontSize: '14px',
          },
          '& .MuiInputAdornment-root': {
            marginLeft: '0px',
            paddingLeft: '10px',
            paddingRight: '10px',
          },
        },
      },
    }}
  />
</LocalizationProvider>

如果需要更贴合德语语境的占位符(比如用St代表小时,Mi代表分钟),可以将mask设为"St:Mi",同时保持format属性确保输入格式正确:

<DesktopTimePicker
  mask="St:Mi"
  format="HH:mm" // 维持实际时间解析格式
  // 其他属性不变
/>

内容的提问来源于stack exchange,提问作者Oliver Watkins

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 08:52:43