为什么 Material-UI 没有覆盖样式?

费尔南多·梅莫内

我在我的应用程序中使用 Material-UI。排版和托盘覆盖工作完美。但是当我尝试覆盖 MUIButton 时,没有任何反应。这是我的样式文件:

const theme = createMuiTheme(SculpStyle);

export const SculpStyle = {
  typography: {
    fontFamily: ["Circular", "Open Sans", "Arial", "sans-serif"].join(","),
    //fontSize: 20
    //    htmlFontSize: 12,
  },

  palette: {
    primary: {
      // light: will be calculated from palette.primary.main,
      main: "#50be9c"
      // dark: will be calculated from palette.primary.main,
      // contrastText: will be calculated to contrast with palette.primary.main
    },
    secondary: {
      light: "#1e8fb2",
      main: "#ee4d73",
      // dark: will be calculated from palette.secondary.main,
      contrastText: "#ffcc00"
    },

    //   contrastThreshold: 3,

    //   tonalOffset: 0.2
    overrides: {
      MuiButton: {
        root: {
          fontWeight: "bold",
          backgroundColor: "red",
          margin: "10px",
          "&:hover": {
            backgroundColor: "green"
          }
        }
      }
    }
  }
};

我完全遵循 Material-UI API,但 Button 永远不会被覆盖。我在这里做错了什么?

拉米兹·沃赫特勒

看起来您在错误的级别上定义了您的覆盖,在您的代码中,它们嵌套在 中palette,但根据文档,特定组件的覆盖应该存在于配置对象的“根”级别(请参阅此处)。

const theme = createMuiTheme(SculpStyle);

export const SculpStyle = {
  typography: {
    fontFamily: ["Circular", "Open Sans", "Arial", "sans-serif"].join(","),
    //fontSize: 20
    //    htmlFontSize: 12,
  },

  palette: {
    primary: {
      // light: will be calculated from palette.primary.main,
      main: "#50be9c"
      // dark: will be calculated from palette.primary.main,
      // contrastText: will be calculated to contrast with palette.primary.main
    },
    secondary: {
      light: "#1e8fb2",
      main: "#ee4d73",
      // dark: will be calculated from palette.secondary.main,
      contrastText: "#ffcc00"
    },

    //   contrastThreshold: 3,

    //   tonalOffset: 0.2
  },
  overrides: {
    MuiButton: {
      root: {
        fontWeight: "bold",
        backgroundColor: "red",
        margin: "10px",
        "&:hover": {
          backgroundColor: "green"
        }
      }
    }
  }
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

具有Material-UI的盖茨比:为什么选择createPageContext?

为什么 Material-UI 按钮的值没有传递给 onClick 事件处理程序?

为什么 Image 在 Material-UI Avatar 组件中没有显示在浏览器中?

样式被Material-UI样式覆盖

Android Material Design UI 和没有 Material Design 的 Android UI 有什么区别?

在React的Material UI中覆盖样式

无法覆盖嵌套 Material UI 组件的样式

如何覆盖 Material-UI Popover 样式?

material-ui:需要帮助覆盖样式

React Material UI 按钮覆盖 hove 样式

Material-UI-为什么我应该使用makeStyles而不是嵌入式样式?

为什么我的复选框(Material-UI)没有更新?我正在使用 useState、useEffect 以及 Material-UI 中的 Checkbox

Material-UI DataGrid 和 Material-UI Table 有什么区别?

语义 UI 反应 | 为什么我的按钮没有样式?

为什么Material-UI Appbar onLeftIconButtonTouchTap不起作用?

为什么Material UI 的“withStyles”不允许camelCase 道具?

Material UI Element css 不起作用,为什么?

为什么在升级 Material UI 时升级 React

React material-UI覆盖默认表单输入样式

如何覆盖Material UI工具提示的内联样式?

如何使用样式组件覆盖 material-ui css?

覆盖Material-UI样式不起作用

React + Material UI-使用样式覆盖组件中的MuiTheme

通过覆盖样式道具使Material-UI组件内联显示

选中后如何覆盖Material-UI开关组件的样式?

如何从祖先覆盖嵌套的Material UI组件的样式?

如何覆盖Material-UI Popover Paper样式?

Material-UI样式覆盖了我的订购原因

我无法覆盖DialogActions的Material-ui根样式