Создать динамический c высота ширина компонента изображения в реакции - PullRequest
0 голосов
/ 27 февраля 2020

Я пытаюсь создать динамический c компонент изображения, который будет использовать материал-ui CardMedia и будет передавать только высоту и ширину.

У меня следующий код

interface ImageDim extends StyledProps {
  width: number,
  height: number
}

const MediaImage = styled.img`
  width: ${props => props.width}px;
  height: ${props => props.height}px;
  object-fit: contain;
`;

export const BuyingImage  = () => {
  return (
    <CardMedia
      alt={'IMAGE'}
    />
  )
} 

Я звоню из другого места, например

<BuyingImage />

Кто-нибудь может мне помочь с этим? Спасибо

1 Ответ

0 голосов
/ 28 февраля 2020

Сначала просим оформить заказ Документ Material-UI Card , поскольку CardMedia используется внутри Card, а реквизит для URL равен image, а не alt

Что касается динамических c высоты и ширины, просто передайте значение, поскольку реквизит, кажется, работает достаточно хорошо.

enter image description here

export default function App() {
  return <Image size={{ width: 400, height: 200 }} />;
}

const Image = props => {
  const width = props.size.width;
  const height = props.size.height;
  return (
    <Card
      style={{
        width: `${width}px`,
        height: `${height}px`
      }}
    >
      <CardMedia
        className="media"
        image={`https://via.placeholder.com/${width}x${height}`}
      />
    </Card>
  );
};

Вы можете попробовать это себя здесь:

Edit currying-lake-q6ipu

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...