选择选项时如何避免 Material UI 选择焦点?

IT技术 reactjs material-design element
2021-05-19 12:00:03

我正在尝试使用Material UI 组件库中Select制作一个界面Input我希望我的 UI/UX 的当前行为按以下顺序显示:1. 用户从Select元素 2 中选择选项Input当用户元素中选择某些内容时将聚焦Select

你可以看到它是如何工作的(参见第二个Select,因为第一个是原生的Select,它不适合我的目的):https : //codesandbox.io/s/l4nq3pjjrm

上面示例中的第一个效果很好,但我需要非本地变体。

我怎么能做到这一点?谢谢。

PS 另外,我发现该错误Select行为还有另一个问题,请查看我的 github 帖子以了解详细信息。( https://github.com/mui-org/material-ui/issues/11964 )

2个回答

所以如果你的问题是值选择后的焦点,试试这个:

1) 在您的组件上导入 MuiThemeProvider 和 createMuiTheme:

import { MuiThemeProvider, createMuiTheme } from '@material-ui/core/styles';

2)然后在导入后添加这行代码(覆盖css):

const theme1 = createMuiTheme({
  overrides: {
    MuiSelect: {
      select: {
        "&:focus": {
          background: "$labelcolor"
        }
      }
    }
  }
});

3) 最后一步,使用以下代码包装要编辑的组件:

<MuiThemeProvider theme={theme1}>

// Your Component here

</MuiThemeProvider>

我将其运用在你的代码在这里

出于某种原因,最佳答案对我不起作用。对于面临此问题的其他人,您也可以这样做:

className: {
    "& .MuiSelect-select:focus": {
        backgroundColor: white,
    },
},