Material-UI는 리액트 개발 시 쉽게 사용할 수 있는 UI Framework.
Material-Ui에서는 자주 사용되는 기능/ 디자인들을 component/API로 제공해 React로 개발할때 다양한 UI를 쉽게 만들 수 있다.기능적인 UI를 제공하면서 다양하게 커스터마이징을 할 수 있다는 점이 가장 매력적이다.
// with npm
npm install @material-ui/core
// with yarn
yarn add @material-ui/core
material에서 제공하는 icon
// with npm
npm install @material-ui/icons
// with yarn
yarn add @material-ui/icons
import를 해서 쉽게 사용 할 수 있다.
import AppBar from "@material-ui/core/AppBar";
import Tabs from "@material-ui/core/Tabs";
import Tab from "@material-ui/core/Tab";
간단하게 작성하는 방법
import { AppBar, Tabs, Tab } from "@material-ui/core";
import * as React from 'react';
import ReactDOM from 'react-dom';
import Button from '@mui/material/Button'; //Button import
function App() {
return (
<Button variant="contained">
Hello World
</Button>
)
}
ReactDOM.render(<App />, document.querySelector('#app'));
커스텀 방법은 component에 css값을 변경해주면 된다.
각 태그마다 선언하는게 아니고 styles을 사용하면 보기 쉽게 변경이 가능하다.
import React from "react";
import Button from "@material-ui/core/Button";
import { makeStyles } from "@material-ui/core/styles"; // styles 기능 추가
const useStyles = makeStyles(theme => ({ // style 요소 선언
margin: {
margin: theme.spacing(1),
}
}));
export default function ButtonComponent() {
const classes = useStyles(); // 생성
return (
<div >
<Button variant="contained" color="primary" className={classes.margin}> // 사용
Primary
</Button>
<Button variant="contained" color="secondary" className={classes.margin}>
Disabled
</Button>
</div>
);
}
material에서 제공하는 다양한 template이다.
https://mui.com/getting-started/templates/
Material-UI 공식 사이트는 모든 component의 예제를 코드와 함께 제공한다.
틈틈히 들어가보고 공부하기 매우 좋은 사이트이다.
참고링크
https://mui.com/
https://goo-gy.github.io/2021-02-28-material-ui
https://velog.io/@sunkim01/React-Material-UI-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0