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

求助:如何自定义MUI X Date Picker的星期名称?

自定义MUI X Date Picker的星期名称方法

要自定义MUI X日期选择器里的星期名称,核心是通过LocalizationProvider组件配置自定义本地化文本,以下是具体实现步骤:

1. 确认依赖

确保你已经安装了MUI X日期选择器以及对应的日期适配器(比如常用的date-fns适配器):

npm install @mui/x-date-pickers @date-io/date-fns date-fns

2. 编写自定义配置

通过localeText属性定义你想要的星期名称(包括完整名称和短名称),示例代码如下:

import { useState } from 'react';
import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
import { DatePicker } from '@mui/x-date-pickers/DatePicker';
import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';
import TextField from '@mui/material/TextField';

// 自定义本地化文本,重点配置星期相关字段
const customLocale = {
  // 完整星期名称(按需使用)
  weekdays: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
  // 日历头部显示的短星期名称
  weekdaysShort: ['日', '一', '二', '三', '四', '五', '六'],
  // 可选:自定义月份名称
  months: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
};

export default function CustomWeekdayPicker() {
  const [selectedDate, setSelectedDate] = useState(null);

  return (
    <LocalizationProvider
      dateAdapter={AdapterDateFns}
      localeText={customLocale}
    >
      <DatePicker
        label="选择日期"
        value={selectedDate}
        onChange={(newDate) => setSelectedDate(newDate)}
        renderInput={(params) => <TextField {...params} />}
      />
    </LocalizationProvider>
  );
}

注意事项

  • 数组顺序:MUI X默认以周日作为一周的第一天,所以weekdays和weekdaysShort的第0项对应周日,如果你需要以周一为首,调整数组顺序即可。
  • 其他适配器:如果使用Moment、Luxon等其他日期适配器,配置逻辑完全一致,只需替换对应的AdapterXXX组件即可。

内容的提问来源于stack exchange,提问作者Rahman Aliyev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 21:05:17