[React] Movie App ๋ง๋ค๊ธฐ (๊ฐ์ธ ํ๋ก์ ํธ) - 1
John Ahn๋์ ์ธํ๋ฐ ๊ฐ์๋ฅผ ๋ฐ๋ผ๊ฐ๋ฉด์ ์งํ์ค์ ๋๋ค.
๊ฐ์ธ ๊ณต๋ถ ์ฉ๋๋ก ๊ธฐ๋กํฉ๋๋ค. ๋ฌธ์ ์ ์ญ์
1. Mongodb
๋ชฝ๊ณ ๋๋น ๊ฐ์ ํ ํด๋ฌ์คํฐ 0 ๋๋น ์์ฑ๊น์ง ํด๋จ๋ค.
๋์ค์ ๋ก๊ทธ์ธ ๊ธฐ๋ฅ์ ์ํด ๊ฐ์ ํด๋๋๋ฏ.
2. Movie API
The Movie Database (TMDB)
Welcome. Millions of movies, TV shows and people to discover. Explore now.
www.themoviedb.org
์ด ์ฌ์ดํธ์์ ์ํ api๋ฅผ ์ ๊ณตํด์ค๋ค๊ณ ํฉ๋๋ค. (์ผ๋จ ์์๊ฐ ํ๊ตญ ๊ธฐ์ค์ ์๋๋ฏ..? ์๋๋ง๊ณ )
๊ฐ์ ํ api๋ฅผ ๋ฐ์.
์น์ ํ๊ฒ API ๋ฌธ์๋ ๋ค ์๋ค์.
์์ฝ๊ฒ๋ ํ์ฌ๊น์ง๋ ์์ด๋ง ์ง์ํ๋ค๊ณ ํฉ๋๋ค
3. ์งํ ์ฌํญ (ํ ํฌ์คํ ๊ธฐ์ค)
๋ฌด๋น์ฑ ํ ํ๋ฆฟ ๋ง๋ค๊ธฐ,
movie api ๊ฐ์ ธ์ค๊ธฐ,
์ต์ ์ํ 1์๋ฅผ ๋ณด์ฌ์ฃผ๋ MainImage ์ปดํฌ๋ํธ ๋ง๋ค๊ธฐ.
4. ๊ธฐ์ตํ ๋ด์ฉ
1) ์ผ๋จ API ๋ฌธ์์์ ํ์ํ ๊ฑธ ๊ธ์ด์จ ๋ค, ๊ณตํต๋๋ ๋ถ๋ถ์ const ๋ณ์๋ก ๋ง๋ค๊ธฐ
2) fetch
๋ฆฌ์กํธ์์ API๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ ๋ ๊ฐ์ง์ด๋ค.
- Axios(Promise ๊ธฐ๋ฐ HTTP ํด๋ผ์ด์ธํธ)
- Fetch API(์๋ฐ์คํฌ๋ฆฝํธ ๋ด์ฅ Web API)
fetch๋ ์๋์ ๊ฐ์ด ์ฌ์ฉํ๋ค.
fetch(myRequest)
.then(response => response.json())
.then(response => {
// data ์๋ต ์ดํ ์คํํ ์ฝ๋
});
3) props
ํจ์ ํธ์ถ ํ ์ค๋ฅธ์ชฝ MainImage(props) ํจ์๋ก props.~~ ์ธ์๋ค์ ๋๊ธฐ๋ฉด ๋จ
์ปดํฌ๋ํธ๋ผ๋ฆฌ ๊ฐ์ ์ ๋ฌํ ์ ์๋๋ฐ ์ฌ๋ฌ ๊ฐ์ ํ๋ฒ์ ์ ๋ฌํ์ฌ ๊ฐํธํ๊ฒ ์ฌ์ฉํ ์ ์๋ ๋ฏ ํ๋ค.
5. ๊ฒฐ๊ณผ๋ฌผ
์์๊ฐ 1์์ธ ์ํ์ image, title, ๋ด์ฉ ์ค๋ช ์ด ์ฌ์ดํธ ๋ฉ์ธ์ผ๋ก ๋ฌ๋ค.