일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- JavaScript
- localStorage
- react
- axios
- react-query
- ContextAPI
- Redux
- 정렬
- route
- props
- Router
- 러닝타입스크립트
- HTML
- 딥러닝
- State
- useParams
- opencv
- image
- TypeScript
- Component
- IOT
- useEffect
- DOM
- raspberrypi
- 자율주행
- nvidia
- swipe
- Ajax
- CSS
- 공부
- Today
- Total
개발일지
React 이미지 파일 사용하기 본문
HTML 안에 이미지 넣고 싶으면 이미지를 import 하고 사용해야한다.
import bg from './bg.png'
function App(){
return (
<div>
<div className="main-bg" style={{ backgroundImage : 'url(' + bg + ')' }}></div>
</div>
)
}
1. import 이름 from './이미지경로' 하고
2. 이미지 경로가 필요한 곳에서 import 한 것 사용한다.
<img> 태그 사용하고 싶으면 <img src={bg} /> 사용한다.
css 파일 사용해도 된다.
Public 폴더 용도
여러 소스코드는 src 폴더에 보관하는데,
이미지같은 static 파일의 경우 public 폴더에 보관해도된다.
리액트로 개발을 끝내면 build 해주게 되는데, 지금까지 짰던 코드들을 한 파일로 압축해주는 작업이다.
src 폴더에 있던 코드와 파일들은 다 압축 되는데, public 폴더에 있는 것들은 그대로 보존한다.
따라서 형태를 보존하고 싶은 파일은 public 폴더에 넣어주면 되는데 이미지, txt, json 등 수정이 필요없는 static 파일들의 경우엔 public 폴더에 보관해도 상관없다.
Public 폴더에 있는 이미지 사용
<img src="/logo192.png" />
'/이미지경로' 로 사용하면된다.
따라서 페이지에 이미지가 많아지는 경우 public 폴더에 넣어놓으면 import 여러번 안해도 되니 편리하게 사용할 수 있따.
css 파일에서도 /이미지경로 사용하면된다.
<img src={process.env.PUBLIC_URL + '/logo192.png'} />
권장하는 방식은 위와같다.
리액트로 만든 HTML 페이지를 배포할 때, kosssshhhh.com 경로에 배포하면 아무런 문제가 없지만,
kosssshhhh.com/home/ 경로에 배포하면 해당 이미지 파일을 찾을 수 없다고 할 수 있다.
따라서 /home/ 을 뜻하는 process.env.PUBLIC_URL 을 붙여준다.
'React' 카테고리의 다른 글
React Router (0) | 2023.02.17 |
---|---|
export / import (0) | 2023.02.17 |
Class 이용하여 컴포넌트 생성하기 (0) | 2023.02.17 |
props (0) | 2023.02.17 |
map 함수 (0) | 2023.02.17 |