代码之家  ›  专栏  ›  技术社区  ›  assembler

MUI 5自动完成将禁用的项目样式更改为不使用不透明

  •  0
  • assembler  · 技术社区  · 1 年前

    在MUI 5自动完成中,我需要覆盖禁用的选项样式,以纯色显示它们,而不是不透明度。

    我试过了:

        '& .MuiAutocomplete-option[aria-disabled="true"]': {
          color: 'red',
          opacity: 1
        }
    

    但是该组件完全忽略了这些样式。我怎样才能做到这一点?

    This 是沙盒。

    1 回复  |  直到 1 年前
        1
  •  1
  •   Ahmet Emre Kilinc    1 年前

    你需要通过 sx 通过 popper 的属性 slotProps 这样地:

    slotProps={{
        popper: {
          sx: {
            '& .MuiAutocomplete-listbox .MuiAutocomplete-option[aria-disabled="true"]':
              {
                color: 'red',
                opacity: '1',
              },
          },
        },
      }}
    

    你可以看看 this StackBlitz 以获取此解决方案的实际工作示例。