
1. 반응형 웹이란?
- PC, 태블릿, 모바일 등 다양한 화면 크기에서 보기 좋게 보이도록
- 다양한 디바이스로 접근이 가능
- 사용자 편의성이 높은 UI
2. REACT 시작
1. 패키지 설치
npm install react-responsive # npm
yarn add react-responsive # yarn
2. 기본 사용법
- react-responsive는 Media Query를 컴포넌트로 사용할 수록 도와주는 라이브러리입니다.
- 모바일 화면에서는 특정 컴포넌트를 숨기고, 데스트답에서 다른 컴포넌트를 보여주고 싶을 때 유용하게 쓰인다.
import React from "react";
import { useMediaQuery } from "react-responsive";
const ResponsiveExample = () => {
const isDesktop = useMediaQuery({ minWidth: 1024 });
const isTablet = useMediaQuery({ minWidth: 768, maxWidth: 1023 });
const isMobile = useMediaQuery({ maxWidth: 767 });
return (
<div>
{isDesktop && <h2> 데스크탑 화면입니다.</h2>}
{isTablet && <h2> 태블릿 화면입니다.</h2>}
{isMobile && <h2> 모바일 화면입니다.</h2>}
</div>
);
};
export default ResponsiveExample;
3. 컴포넌트 분리하기
import { useMediaQuery } from "react-responsive";
export const Desktop = ({ children }) => {
const isDesktop = useMediaQuery({ minWidth: 1024 });
return isDesktop ? children : null;
};
export const Tablet = ({ children }) => {
const isTablet = useMediaQuery({ minWidth: 768, maxWidth: 1023 });
return isTablet ? children : null;
};
export const Mobile = ({ children }) => {
const isMobile = useMediaQuery({ maxWidth: 767 });
return isMobile ? children : null;
};
import React from "react";
import { Desktop, Tablet, Mobile } from "./Responsive";
const App = () => (
<>
<Desktop>데스크탑 전용 페이지</Desktop>
<Tablet>태블릿 전용 페이지</Tablet>
<Mobile>모바일 전용 페이지</Mobile>
</>
);
export default App;
'DEVELOPMENT > react' 카테고리의 다른 글
| [React Native] Aglie, Scrum, User Story, TDD 알아보기 (0) | 2025.05.06 |
|---|---|
| [React Native] 리액트 네이티브 개발하기 - 개발환경 세팅 ( 시작하기 ) (0) | 2025.05.06 |
| 14. [감정 일기장] 만들기 1 (0) | 2025.01.13 |
| 13. 컴포넌트 트리에 데이터 공급하기 (0) | 2025.01.08 |
| 12. 최적화 (0) | 2025.01.06 |