Material-UI makeStyles 与 withStyles 生成的类名

IT技术 html reactjs react-hooks material-ui high-order-component
2021-05-10 16:13:10

我注意到使用makeStyles生成的类和钩子的使用遵循以下命名法:

制作样式

而使用withStyles生成的类和 HOC 的使用遵循以下一个:

在此处输入图片说明

有没有办法使用makeStyles(我喜欢使用钩子)但保留withStyles命名法我喜欢这个是因为在浏览器中分析 html 并确定生成每个元素的类更容易。

1个回答

的第二个(可选)参数makeStyles是一个选项对象,用于控制 的行为makeStyles选项之一是名称,然后将其用作类名称的前缀。withStyles 通过 Component.displayName作为name选项。您可以指定任何您想要的名称来控制类名前缀,例如在我下面的示例中,类名最终是Hello-root-1.

import { makeStyles } from "@material-ui/core/styles";

const useStyles = makeStyles(
  {
    root: {
      backgroundColor: "green"
    }
  },
  { name: "Hello" }
);

export default function App() {
  const classes = useStyles();
  return (
    <div>
      <h1 className={classes.root}>Hello CodeSandbox</h1>
    </div>
  );
}

编辑控件 makeStyles 类名前缀