๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Daily/Today I Learned

fe-sprint-statesairline-client

by hustle-ing 2023. 4. 3.

fe-sprint-statesairline-client์˜ ๋ชฉํ‘œ 

๐Ÿ’ก Part 1: ํ•ญ๊ณต๊ถŒ ๋ชฉ๋ก ํ•„ํ„ฐ๋ง
    ๐Ÿงฉ Main ์ปดํฌ๋„ŒํŠธ์—์„œ ํ•ญ๊ณตํŽธ์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค
      โœ“ Main ์ปดํฌ๋„ŒํŠธ ๋‚ด `search` ํ•จ์ˆ˜๋Š” ๊ฒ€์ƒ‰ ์กฐ๊ฑด์„ ๋‹ด๊ณ  ์žˆ๋Š” ์ƒํƒœ ๊ฐ์ฒด `condition`์„ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (24 ms)
    ๐Ÿงฉ Search ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ†ตํ•ด ์ƒํƒœ ๋Œ์–ด์˜ฌ๋ฆฌ๊ธฐ๋ฅผ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค
      โœ“ ๊ฒ€์ƒ‰ ํ™”๋ฉด์ด Search ์ปดํฌ๋„ŒํŠธ๋กœ ๋ถ„๋ฆฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (3 ms)
      โœ“ Search ์ปดํฌ๋„ŒํŠธ์—๋Š” ์ƒํƒœ ๋ณ€๊ฒฝ ํ•จ์ˆ˜ `search`๊ฐ€ `onSearch` props๋กœ ์ „๋‹ฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (5 ms)
      โœ“ ์ƒํƒœ ๋ณ€๊ฒฝ ํ•จ์ˆ˜ `search`๋Š” Search ์ปดํฌ๋„ŒํŠธ์˜ `๊ฒ€์ƒ‰` ๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ์‹คํ–‰๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (25 ms)
  ๐Ÿ’ก Part 2: AJAX ์š”์ฒญ
    ๐Ÿงฉ Side Effect๋Š” useEffect์—์„œ ๋‹ค๋ค„์•ผ ํ•ฉ๋‹ˆ๋‹ค
      โœ“ ๊ฒ€์ƒ‰ ์กฐ๊ฑด์ด ๋ฐ”๋€” ๋•Œ๋งˆ๋‹ค, FlightDataApi์˜ getFlight๋ฅผ ๊ฒ€์ƒ‰ ์กฐ๊ฑด๊ณผ ํ•จ๊ป˜ ์š”์ฒญํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (16 ms)
      โœ“ getFlight์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์•„, flightList ์ƒํƒœ๋ฅผ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (55 ms)
      โœ“ ๋”์ด์ƒ, ์ปดํฌ๋„ŒํŠธ ๋‚ด ํ•„ํ„ฐ ํ•จ์ˆ˜ `filterByCondition`๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
      โœ“ ๋”์ด์ƒ, ํ•˜๋“œ์ฝ”๋”ฉ๋œ flightList JSON์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค (์ดˆ๊ธฐ๊ฐ’์€ ๋นˆ ๋ฐฐ์—ด๋กœ ๋‘ก๋‹ˆ๋‹ค)
      โœ“ getFlight ์š”์ฒญ์ด ๋‹ค์†Œ ๋Š๋ฆฌ๋ฏ€๋กœ, ๋กœ๋”ฉ ์ƒํƒœ์— ๋”ฐ๋ผ LoadingIndicator ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ‘œ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค (38 ms)
    ๐Ÿงฉ FlightDataApi์—์„œ ๊ธฐ์กด ๊ตฌํ˜„ ๋Œ€์‹ , REST API๋ฅผ ํ˜ธ์ถœํ•˜๋„๋ก ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค
      โœ“ ๊ฒ€์ƒ‰ ์กฐ๊ฑด๊ณผ ํ•จ๊ป˜ StatesAirline ์„œ๋ฒ„์—์„œ ํ•ญ๊ณตํŽธ ์ •๋ณด๋ฅผ ์š”์ฒญ(fetch)ํ•ฉ๋‹ˆ๋‹ค (6 ms)

 

Main.js

 

Search.js

 

FlightDataApi.js

 

 

 

์ƒ๊ฐ 

์–ด์ฐŒ์ €์ฐŒ ํ…Œ์ŠคํŠธ๋Š” ํ†ต๊ณผํ•˜์˜€์ง€๋งŒ, ๋…ผ๋ฆฌ๊ฐ€ ์™„๋ฒฝํ•˜๊ฒŒ ์ดํ•ด ๋˜์ง€๋Š” ์•Š์•˜๋‹ค.

์กฐ๊ธˆ ๋” ์ดํ•ดํ•ด๋ณด๊ณ ์ž ์ฝ”๋“œ๋ฅผ ๊ทธ๋Œ€๋กœ ๋”ฐ๋ผ ์ ์–ด๋ณด์•˜์œผ๋‚˜ ์™„๋ฒฝํ•˜๊ฒŒ ์ดํ•ด๋˜์ง€๋Š” ์•Š์•˜๋‹ค.

์ฝ”๋“œ๋ฅผ ์ฝ์œผ๋ฉด ์ดํ•ด๊ฐ€ ๋˜๊ณ , ์ด ๋ถ€๋ถ„์€ ์ด๋ ‡๊ฒŒ ํ•ด์•ผ์ง€ ์Œ์Œ~ ์ด๋Ÿฐ ์ƒ๊ฐ์ด ๋“ค์ง€๋งŒ ๋ฐฑ์ง€์ƒํƒœ์—์„œ ์ ์–ด๋‚ด๋ ค๊ฐˆ ๋Šฅ๋ ฅ์€ ์•„์ง ์•ˆ๋œ๋‹ค.

 

๋Œ“๊ธ€