Recibo un error al acceder a los datos presentes en el carrito a través de cartitem . No soy tan bueno en esto. alguien me puede ayudar a corregir el error??
import React from 'react' import { Typography, Button, Card, CardActions, CardContent, CardMedia } from '@material-ui/core'; import useStyles from './styles'; const CartItem = ({ item }) => { const classes = useStyles return ( <Card> <CardMedia image={item.media.source} alt={item.name} className={classes.media} /> <CardContent className={classes.cardContent}> <Typography variant="h4">{item.name}</Typography> <Typography variant="h5">{item.line_total.formatted_with_symbol}</Typography> </CardContent> <CardActions className={classes.cardActions}> <div className={classes.buttons}> <Button type="button" size="small">-</Button> <Typography>{item.quantity}</Typography> <Button type="button" size="small">+</Button> </div> <Button variant="contained" type="button" color="secondary">Remove</Button> </CardActions> </Card> ) } export default CartItemAgregando a la respuesta de @terpinmd, y su comentario de accesorios fallidos. Utilizar este
<CardMedia image={item?.media?.source || ““} alt={item.name} className={classes.media} />Esto da una cadena vacía como apoyo a la imagen si item o item.media no están definidos.
Necesitaríamos más información para decir exactamente por qué, pero 'medios' (o posiblemente elemento) parece no estar definido por el error.
Puede agregar algo de seguridad con esta sintaxis:
<CardMedia image={item?.media?.source} alt={item.name} className={classes.media} />Observe la '?' arriba.... más información sobre lo que hace aquí