๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ‘ฉ‍๐Ÿ’ป ๊ฐœ๋ฐœ ๊ณต๋ถ€

[React] Movie App ๋งŒ๋“ค๊ธฐ (๊ฐœ์ธ ํ”„๋กœ์ ํŠธ) - 1

John Ahn๋‹˜์˜ ์ธํ”„๋Ÿฐ ๊ฐ•์˜๋ฅผ ๋”ฐ๋ผ๊ฐ€๋ฉด์„œ ์ง„ํ–‰์ค‘์ž…๋‹ˆ๋‹ค.
๊ฐœ์ธ ๊ณต๋ถ€ ์šฉ๋„๋กœ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ ์‹œ ์‚ญ์ œ

 

1. Mongodb

๋ชฝ๊ณ ๋””๋น„ ๊ฐ€์ž… ํ›„ ํด๋Ÿฌ์Šคํ„ฐ 0 ๋””๋น„ ์ƒ์„ฑ๊นŒ์ง€ ํ•ด๋†จ๋‹ค.

๋‚˜์ค‘์— ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์„ ์œ„ํ•ด ๊ฐ€์ž…ํ•ด๋†“๋Š”๋“ฏ.

 

Wow ! Cluster 0 is free. thank you

 

2. Movie API

 

https://www.themoviedb.org/

 

The Movie Database (TMDB)

Welcome. Millions of movies, TV shows and people to discover. Explore now.

www.themoviedb.org

์ด ์‚ฌ์ดํŠธ์—์„œ ์˜ํ™” api๋ฅผ ์ œ๊ณตํ•ด์ค€๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. (์ผ๋‹จ ์ˆœ์œ„๊ฐ€ ํ•œ๊ตญ ๊ธฐ์ค€์€ ์•„๋‹Œ๋“ฏ..? ์•„๋‹˜๋ง๊ณ )

๊ฐ€์ž… ํ›„ api๋ฅผ ๋ฐ›์Œ.

 

api ๋ฌธ์„œ

์นœ์ ˆํ•˜๊ฒŒ API ๋ฌธ์„œ๋„ ๋‹ค ์žˆ๋„ค์š”.

์•„์‰ฝ๊ฒŒ๋„ ํ˜„์žฌ๊นŒ์ง€๋Š” ์˜์–ด๋งŒ ์ง€์›ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค

 

 

3. ์ง„ํ–‰ ์‚ฌํ•ญ (ํ˜„ ํฌ์ŠคํŒ… ๊ธฐ์ค€)

 

๋ฌด๋น„์•ฑ ํ…œํ”Œ๋ฆฟ ๋งŒ๋“ค๊ธฐ,

movie api ๊ฐ€์ ธ์˜ค๊ธฐ,

์ตœ์‹ ์˜ํ™” 1์œ„๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” MainImage ์ปดํฌ๋„ŒํŠธ ๋งŒ๋“ค๊ธฐ.

 

๊ฐ•์˜ ์Šคํฌ๋ฆฐ์ƒท

 

4. ๊ธฐ์–ตํ•  ๋‚ด์šฉ

 

1) ์ผ๋‹จ API ๋ฌธ์„œ์—์„œ ํ•„์š”ํ•œ ๊ฑธ ๊ธ์–ด์˜จ ๋’ค, ๊ณตํ†ต๋˜๋Š” ๋ถ€๋ถ„์€ const ๋ณ€์ˆ˜๋กœ ๋งŒ๋“ค๊ธฐ

like this

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, ๋‚ด์šฉ ์„ค๋ช…์ด ์‚ฌ์ดํŠธ ๋ฉ”์ธ์œผ๋กœ ๋œฌ๋‹ค.