I used other react components before, they mostly have their own Image component, but I can't find that in Material-UI?
Or is it done via CardMediaAPI? or simply use tags? Thanks!
There is no such specific custom img component avaiable with material-ui.
But you can use the simple html img component inside another wrapper components to create custom img component by your own. e.g
<Paper variant="outlined">
<img src="url" />
</Paper>
Also <CardMedia/> component has to be used with in conjunction with <Card/> component.
Another such component which uses image is <Avatar> component.
<Avatar alt="Example Alt" src="/static/images/avatar.jpg" />
You can use CardMedia from Material UI as below. Please see the section Complex Interaction in Material UI Example
<CardMedia
className={classes.media}
image="/static/images/cards/paella.jpg"
title="Paella dish"
/>
Material-ui recommends using Material-ui-image, you have to install it separately but I have really enjoyed using it. After installing, as expected, it's simply:
import Image from "material-ui-image";
...
<Image src="image/src/" />
Another option (at least in v5) is to use the Box component and select the underlying html element to be img as given in the example below (copied from official docs for v5)
<Box
component="img"
sx={{
height: 233,
width: 350,
maxHeight: { xs: 233, md: 167 },
maxWidth: { xs: 350, md: 250 },
}}
alt="The house from the offer."
src="https://images.unsplash.com/photo-1512917774080-9991f1c4c750?auto=format&w=350&dpr=2"
/>
While I am answering this question, the latest version of MUI is 5.2.2 and there is no exact image component, but MUI had mentioned two third-party provided image components. One is mui-image and another one is material-ui-image. According to MUI, "mui-image is the only MUI image component to satisfy the Material guidelines for loading images" .
You can easily install mui-image by following few steps:
Install:
npm i mui-image
//or
yarn add mui-image
Import:
import Image from 'mui-image'
// or
import { Image } from 'mui-image'
Use:
<Image src="my-image.png" />
For details about mui-image props and more check npmjs package docs here.