材质UI选择覆盖主题中的位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了材质UI选择覆盖主题中的位置相关的知识,希望对你有一定的参考价值。

我想在主题中覆盖selectfield的下拉位置(不必在每次选择时实现它)。

我试过了。

createMuiTheme({
  overrides: {
    MuiSelect: {
      select:{
        MenuProps: {
          getContentAnchorEl: null,
            anchorOrigin: {
              vertical: "bottom",
                horizontal: "left",
            }
          }
        }
      }
    }
  }
});

下拉框的位置不能被覆盖。我也试着替换 selectselectMenu 但什么都没有发生...

当我直接传递到组件道具时,它可以工作。

<Select
  ...otherProperties, 
  MenuProps={{
    getContentAnchorEl: null,
    anchorOrigin: {
      vertical: "bottom",
      horizontal: "left",
    }
  }}
>
  ...childs
</Select>

我怎样才能实现在所有选择中覆盖这个道具?

对于信息,我正在使用。

"react": "^16.12.0",
"@material-ui/core": "^4.9.10", 
"typescript": "3.6.3",

先谢谢你

答案

覆盖键 是用来覆盖样式的。你应该使用 道具钥匙 用于主题中的默认道具。

下面是正确的语法。


const theme = createMuiTheme({
  props: {
    MuiSelect: {
      MenuProps: {
        getContentAnchorEl: null,
        anchorOrigin: {
          vertical: "bottom",
          horizontal: "left"
        }
      }
    }
  }
});

Edit Select MenuProps in theme

相关回答: 是否可以覆盖 material-ui 组件的默认道具?

以上是关于材质UI选择覆盖主题中的位置的主要内容,如果未能解决你的问题,请参考以下文章

我的材质 UI 自定义类被材质 UI 的默认类覆盖

如何覆盖材质 UI MuiCard-root 类中的溢出属性

覆盖材质 UI 样式的问题

覆盖材质-ui中的制表符样式(无左/右填充)

Typescript 中的材质 UI 选择

我如何使用一个主题来设置所有材质 UI 输入的样式,就好像它们有一个变体 ='outlined' 一样? [复制]