es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

MUI makeStyles no funciona en el componente Card.

Tengo este componente llamado Product que se basa en este ejemplo aquí. Aquí está mi componente:

Product.tsx:

import useStyles from './useStyles'

const Product: React.FC = () => {
  const classes = useStyles();

  return (
    <card classname="{classes.secondaryBorder}">
      <cardactionarea>
        <cardcontent>
          <typography gutterbottom="" variant="h5">
            Este es mi título
          </typography>

          <typography variant="body2" color="text.secondary">
            Este es mi cuerpo
          </typography>
        </cardcontent>
      </cardactionarea>
    </card>
  );
};

useStyles.ts:

import { makeStyles } from '@mui/styles';

const useStyles = makeStyles({
  secondaryBorder: {
    border: '2px solid blue',
  },
  flex: {
    display: 'flex',
  },
});

El problema es que el componente Card no tiene el estilo secondaryBorder, es decir, no tiene un borde azul alrededor. ¿Cuál es el problema?

¡Gracias!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El problema es que el nombre de la clase secondaryBorder no se está aplicando al componente Card. Esto se debe a que el nombre de la clase secondaryBorder está definido en el hook useStyles, pero no se utiliza en ninguna parte del componente Product. Para aplicar este nombre de clase al componente Card, se debe agregar al atributo className del componente Card, de la siguiente manera:

    <card classname="{`${classes.secondaryBorder}`}">
    

    Al incluir ${classes.secondaryBorder} en el atributo className, al componente Card se le aplicará el borde azul.

Comments are closed.