Any idea what is the between classes prop in mui and className ? since booth does the same thing as far as I can tell, please note am not asking about the classes variable in the component which might cause a confusion
const useStyles = makeStyles((theme: Theme) =>
createStyles({
root: {
'& > *': {
//margin: theme.spacing(0.5),
},
padding: 0,
},
const SomeComponent: React.FC<Props> = () => {
const classes = useStyles();
return (
<div>
<NativeSelect className={classes.nativeSelect} classes={classes.nativeSelect}>
</div>
)
}
CodePudding user response:
Prop className is used to add styling to the element, while classes is used to Override or extend the styles applied to the component.
So basically, you can create another class into your stylesheet and apply it into className like
.new_class{
color:red;
}
but to override existing classes like .MuiRating-root you have to use classes prop
CodePudding user response:
className usually applies styles to the root element while classes can target descendant elements or components or even their states. E.g. NativeSelect component renders an icon component, you can pass an icon class to the classes object, or apply styles when the component is disabled etc.
