How to disable ripple in Material Design React

天大地大妈咪最大 提交于 2020-05-14 19:08:34

问题


I am talking about this repository. https://github.com/callemall/material-ui

I want to know how to disable the ripple effect from all components.

Thanks.


回答1:


You can disable the default property by adding this to componentDidMount() at the highest level React component that is inside of the MUIThemeProvider:

componentDidMount(){
  //Do this to all components you would like to disable the ripple effect.
  EnhancedButton.defaultProps.disableTouchRipple = true;
  EnhancedButton.defaultProps.disableFocusRipple = true;
}



回答2:


According to Material-UI documentation, you can disable the ripple effect globally by providing the following in your theme:

import React from "react";

import Button from "@material-ui/core/Button";
import { createMuiTheme, MuiThemeProvider } from "@material-ui/core";

export default function ContainedButtons() {
  const theme = createMuiTheme({
    props: {
      // Name of the component
      MuiButtonBase: {
        // The properties to apply
        disableRipple: true // No more ripple, on the whole application!
      }
    }
  });
  return (
    // You need to wrap your component with <MuiThemeProvider> tag
    <MuiThemeProvider theme={theme}>
      <div>
        <Button variant="contained" color="primary">
          Primary
        </Button>
      </div>
    </MuiThemeProvider>
  );
}

You can check this working sample code.



来源:https://stackoverflow.com/questions/42211994/how-to-disable-ripple-in-material-design-react

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!