Есть ли способ программно скрыть «AM» из раскрывающегося списка AM/PM в MUI DesktopTimePicker?

Я создаю временной диапазон и столкнулся с этой проблемой. Я хочу разрешить только AM, когда определенное условие истинно, в противном случае должны быть доступны как AM, так и PM.

Я использую это https://mui.com/x/api/date-pickers/desktop-time-picker/

Дайте мне знать, если вы, ребята, можете помочь.

Спасибо

Я пробовал отключить более позднее время, но все равно показывает AM.

shouldDisableTime={(timeValue, clockType) => { return clockType === "hours" && new Date(timeValue).getHours() >= 12; }}

1 ответ

нашел решение, я использовал CSS, чтобы скрыть PM с помощьюdisplay:none.

вот как я этого добился:

сначала я создал класс:

      .hide-pm li[aria-label="PM"] {
    display: none;
}

затем использовал этот класс в реквизите поппера.

      <DesktopTimePicker
  ampm
  label='closing time'
  slotProps={
   popper: {
     className: ifTrue ? 'hide-pm' : ''
   }
  }
  ...
/>

Вот и все.

Спасибо

Другие вопросы по тегам