在 Material-UI v5 中,一些 API 使用是从 导入的@mui/material/styles,例如useTheme. 一些 API 使用是从 导入的@mui/styles,例如makeStyles. 我可以仅使用一个库中的那些与样式相关的 API,或者@mui/styles吗@mui/material/styles?因为,在 Material-UI v4 中,我从'@material-ui/core/styles'或导入了所有与样式相关的 API 'material-ui/styles'。
给出如下卡片代码: 卡片
如何更新卡片样式或任何材质UI样式
const styles = theme => ({
card: {
minWidth: 275,
},
Run Code Online (Sandbox Code Playgroud)
如下:
const styles = theme => ({
card: {
minWidth: 275, backgroundColor: props.color },
Run Code Online (Sandbox Code Playgroud)
当我尝试最新的那个时,我得到了
Line 15: 'props' is not defined no-undef
Run Code Online (Sandbox Code Playgroud)
当我更新代码时:
const styles = theme => (props) => ({
card: {
minWidth: 275, backgroundColor: props.color },
Run Code Online (Sandbox Code Playgroud)
也
const styles = (theme ,props) => ({
card: {
minWidth: 275, backgroundColor: props.color },
Run Code Online (Sandbox Code Playgroud)
代替
const styles = theme => ({
card: {
minWidth: 275, backgroundColor: props.color …Run Code Online (Sandbox Code Playgroud) 我在尝试更大规模地使用 MUI Styled () 时遇到问题:有人可以看一下我们在之前版本中使用的代码,并让我知道如何在 MUI V5 中复制它。
老办法:
const useStyles = makeStyles((theme) => ({
root: {
backgroundColor: "#fdfdff",
},
pageHeader: {
padding: theme.spacing(4),
display: "flex",
marginBottom: theme.spacing,
},
pageIcon: {
display: "inline-block",
padding: theme.spacing(2),
color: "#3c44b1",
},
pageTitle: {
paddingLeft: theme.spacing(4),
"& .MuiTypography-subtitle2": {
opacity: "0.6",
},
},
}));
export default function PageHeader(props) {
const classes = useStyles();
const { title, subTitle, icon } = props;
return (
<Paper elevation={0} square className={classes.root}>
<div className={classes.pageHeader}>
<Card className={classes.pageIcon}>{icon}</Card>
<div className={classes.pageTitle}>
<Typography …Run Code Online (Sandbox Code Playgroud)