javascript - 反应 useStyles 不应用样式
问题描述
我正在尝试在 React JS 中创建一个电子商务平台。我正在关注 Youtube 的教程。我不知道是什么问题,但是样式组件中的样式没有正确应用,用导师的代码交叉检查了几个代码,但无法找出问题所在。有人能发现问题吗?
Products.jsx 组件
import React from 'react'
import {Card, CardMedia, CardContent, CardActions, Typography} from '@material-ui/core'
import { IconButton } from '@material-ui/core'
import { AddShoppingCart} from '@material-ui/icons'
import useStyles from './styles'
const Product = ({product}) => {
const classes = useStyles();
return (
<Card className={classes.root}>
<CardMedia className={classes.media} image={product.image} title={product.name} />
<CardContent>
<div className={classes.CardContent}>
<Typography variant="h5" gutterBottom>
{product.name}
</Typography>
<Typography variant="h5">
{product.price}
</Typography>
</div>
<Typography variant="body2" color="textSecondary">{product.description}</Typography>
<CardActions disableSpacing className={classes.CardActions}>
<IconButton aria-label="Add to Cart">
<AddShoppingCart/>
</IconButton>
</CardActions>
</CardContent>
</Card>
)
}
export default Product
风格。js文件在这里
import { makeStyles } from "@material-ui/core";
export default makeStyles(() => ({
root: {
maxWidth: "100%"
},
media: {
height: 0,
paddingTop: '56.25%'
},
carrdActions: {
display: 'flex',
justifyContent: 'flex-end'
},
cardContent: {
display: 'flex',
justifyContent: 'space-between'
}
}))
任何帮助表示赞赏!
解决方案
这必须是classes.carrdActions
:
<CardActions disableSpacing className={classes.CardActions}>
因为你是这样定义的:
carrdActions: {
display: 'flex',
justifyContent: 'flex-end'
},
与classes.CardContent
推荐阅读
- c# - 是否有代码注释将 XML 属性限制为枚举值?
- nlog - NLog.config -> 可以删除旧的日志文件吗?
- ansible - 在 Ansible Jinja2 模板中循环另一个 var 时将项目推送到一个 var
- linux - 为来自 tcsh 的文件预加载 open()
- c# - 使用 c# 在 MongoDB 上进行多个关键字搜索?
- javascript - 在每个对象中使用 Object.assign()
- java - 两个活动之间的共享元素转换不合适
- c# - 获取不同 XML 上的特定元素
- verilog - Verilog中非阻塞赋值的使用
- ios - 使用 Swift 泛型创建新的 NSManagedObjects