Inflearn brand logo image

인프런 커뮤니티 질문&답변

짜파게티님의 프로필 이미지
짜파게티

작성한 질문수

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

프로젝트 구조 설명

assets과 public의 차이점

작성

·

188

0

assets에 있는 파일이 번들링이 된다면
assets에 이미지같은것들을 넣으면 될까요???

public에있는 파일들은 '최종번들에 복사되어진다'고 하셨는데
이말이 무슨뜻인지 잘이해가 안가서그러는데 부가설명해주시면 감사하겠습니다.

답변 1

0

짐코딩님의 프로필 이미지
짐코딩
지식공유자

안녕하세요 🙂

assets와 public 폴더 차이점

프로젝트에서 assets와 public 폴더는 각각 다른 목적으로 사용되는데요 차이점을 명확히 설명드리면!

assets 폴더의 특징

  • 웹팩이 파일을 자동으로 최적화해줍니다 (압축, 이름 변경 등)

  • import 키워드로 불러와서 사용합니다

import logo from '../assets/logo.png';
<img src={logo} />

public 폴더의 특징

  • 파일이 있는 그대로 사용됩니다 (최적화 없음)

  • 절대 경로(/)로 바로 사용합니다

<img src="/logo.png" />

 

assets 폴더에 넣는 파일은 대부분 아래와 같습니다.

  • 컴포넌트에서 사용하는 이미지들

  • 로고, 아이콘

  • CSS/SCSS 파일들

  • SVG 아이콘들

public 폴더에 넣는 파일:

  • favicon.ico

  • robots.txt

  • manifest.json

  • 폰트 파일들

  • PDF 문서

  • SEO용 og 이미지

요약!

assets는 최적화가 필요한 파일을, public은 있는 그대로 사용할 파일을 넣으면 됩니다. 일반적으로 컴포넌트에서 자주 사용되는 이미지는 assets에, 브라우저에서 직접 접근이 필요한 정적 파일은 public에 놓으시면 될 것 같아요~! 💪 👍

짜파게티님의 프로필 이미지
짜파게티
질문자

감사합니다!!!

짜파게티님의 프로필 이미지
짜파게티

작성한 질문수

질문하기