์ด๋ฒ ์์ ์ ๋ชฉํ๋ GitHub Actions์์ ๋ค๋ฅธ ๋ ํฌ์งํ ๋ฆฌ๋ก PR์ ์๋ ์์ฑํ๋ ๊ฒ์ด๋ค.ํ์ฌ ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ๋ค.์ฌ๊ธฐ์ ์ค์ํ ์ ์ Action์ด ์คํ๋๋ ๋ ํฌ์งํ ๋ฆฌ์ PR์ ์์ฑํด์ผ ํ๋ ๋ ํฌ์งํ ๋ฆฌ๊ฐ ๋ค๋ฅด๋ค๋ ๊ฒ์ด๋ค.๊ทธ๋์ ๊ธฐ๋ณธ GITHUB_TOKEN๋ง์ผ๋ก๋
ํ๋ก ํธ์๋ ํ์์๋ ๊ณตํต์ผ๋ก ์ฌ์ฉํ ์ ์๋ ๋ชจ๋์ ๋ฐ๋ก ๊ด๋ฆฌํ๊ณ ์๋ค.ํ์ฌ ๋ชจ๋์ ํฌ๊ฒ ๋ค ๊ฐ์ง๋ก ๋๋๋ค.basic-uicorehooksutils์ด ๋ชจ๋๋ค์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ํ๋ฉด์ ๋ฐ๋ณต์ ์ผ๋ก ์ฌ์ฉ๋๋ UI, ๋ก์ง, ํ , ์ ํธ ํจ์๋ค์ ๋ชจ์๋ ํจํค์ง๋ค.๊ฐ ๋ชจ๋์ np
๊ธฐ์กด ์ฑ์ expo-updates๋ฅผ ์ฌ์ฉํ๊ณ ์์ด์, ์คํ ์ด ์ฌ์ฌ ์์ด๋ JS ์ฝ๋ ๋ณ๊ฒฝ์ฌํญ์ OTA๋ก ๋ฐฐํฌํ ์ ์๋ ์ํ์๋ค.์ฆ ์ด์ ์ค ๊ธด๊ธ ์์ ์ด ํ์ํ ๋, ์ฑ์คํ ์ด/ํ๋ ์ด์คํ ์ด ์ฌ์ฌ์ฌ๋ฅผ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ๋น ๋ฅด๊ฒ ๋ฐ์ํ ์ ์๋ค๋ ์ฅ์ ์ด ์์๋ค.ํ์ง๋ง ์ฌ๊ธฐ์ ์ค์
์์ฉ ์ฑ์ ์ด์ํ๋ค ๋ณด๋ฉด, ์ฑ ์ฌ์ฌ๋ฅผ ๋ค์ ๊ฑฐ์น์ง ์๊ณ ๋น ๋ฅด๊ฒ ๋ฐ์ํด์ผ ํ๋ ์์ ์ด ์๊ธด๋ค.์ด๋ด ๋ OTA ์ ๋ฐ์ดํธ๋ ๊ต์ฅํ ์ ์ฉํ์ง๋ง, ์ค์ ์ฌ์ฉ์ ์ ์ฅ์์๋ ์๋ ๊ฐ์ ๋ถํธ์ด ๋ฐ์ํ ์ ์์๋ค.์์ ์ฌํญ์ด ๋ฐฐํฌ๋์๋๋ฐ๋ ์ฑ์ ๊ป๋ค ์ผ๊ธฐ ์ ๊น์ง๋ ๋ฐ์๋์ง ์์์ด๋ค ๊ฒฝ์ฐ
๊ฒฐ์ ์์ ฏ URL์์ย paymentsData์ ๋ค์ด๊ฐ๋ย orderNameย ๊ฐ์ด ์๋์ฒ๋ผย %๋ฅผ ํฌํจํ ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค.๋ง์๋ ๋ค๋ผ๋ธ๊ธฐ! 59%%%์ค์ URL์์๋ย %๊ฐ URL ์ธ์ฝ๋ฉ๋์ด ์๋์ฒ๋ผ ๋ณด์๋ค....paymentsData=%7B...%22orderName%2

๋ค์ด๋๋ฏน ์ํฌํธ ํ์ฉํ๊ธฐ๋ฌผ๋ก ๋ด๊ฐ ๋ค์ด๋๋ฏน ์ํฌํธ ์ฒ๋ฆฌ๋ฅผ ์งํํ ์ปดํฌ๋ํธ ํฌ๊ธฐ๊ฐ ๋ฏธ๋ฏธํด์, ๋ฒ๋ค์ฌ์ด์ฆ์ ํฌ๊ฒ ์ํฅ์ ์ค์ง๋ ์๋ฌธ์ด์๋ค.ํ์ง๋ง ์ด๊ฒ์ ์งํํ๋ ์ทจ์ง๋ ๋ฒ๋ค ์ฌ์ด์ฆ๋ฅผ ์ค์ฌ๋ณธ ๊ฒฝํ์ ํด๋ณด๊ณ ์ถ์ด์์๋ค.hydrate๋ผ๋ ๊ฐ๋ , ๊ทธ๋ฆฌ๊ณ ๋ฆฌ์ํธ์์์ hydrate

2๊ฐ์ ํ๋ก์ ํธ๋ฅผ ์งํํด๋ดค์ผ๋, ๋ง์ง๋ง์ผ๋ก ์ฌ์ฉ์๊ฐ ์ค์ ๋ก ์กด์ฌํ๋ ํ๋ก์ ํธ๋ฅผ ์งํํด๋ณด๊ณ ์ถ๋ค๋ ์๊ฐ์ ํจ. ์น๊ตฌ์ sns ๊ณ์ ์ ์ด์ฉํด์ ์ผํ๋ชฐ์ ์คํํด๋ณด๋ ค๊ณ ํจ.์ฒ์ ๊ธฐํํ ๋๋ ์ผํ๋ชฐ์ด๋ ์๋ฅ๋ค์ ๋ณด์ฌ์ฃผ๋ shopํ์ด์ง, ๋ง์ดํ์ด์ง ๋ฑ๋ฑ ๊ฐ๋ณ๊ฒ ์๊ฐํ๊ณ ์งํ.ํ์ง๋ง
์ข ์ฌํํ ํ์ ๊ฒ์ฌ์ ํ์ํ ์ง์๋ค์ฌ๋ฌ ๊ฐ์ง ํ์ ์ ๊ฒฐํฉํ์ฌ ํ๋์ ๋จ์ผ ํ์ ์ผ๋ก ๋ง๋ค ์ ์์&๋ฅผ ์ฌ์ฉํด์ ํ๊ธฐํจ. A&B๊ฒฐ๊ณผ๋ฌผ๋ก ํ์ํ ๋จ์ผ ํ์ ์๋ ํ์ ๋ณ์นญ(type alias)์ ๋ถ์ผ ์ ์์type ProductItemWithDiscount = Product
์๋ฐ์คํฌ๋ฆฝํธ์ anyํ์ ์ด ์๋๊ฐ?anyํ์ ์ ํ์ ์คํฌ๋ฆฝํธ์๋ง ์กด์ฌํ๋ ๋ ์์ ์ธ ํ์ ์์คํ ์ผ๋ก ๊ฐ์ฃผ๋จํ์ง๋ง anyํ์ ์ ๊ฐ๋ ์ ์ด๋ฏธ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฌ์ฉ๋จ. ์ด๋ฆ ๊ทธ๋๋ก ์ด๋ค ํ์ ์ด๋ ๋งคํํ ์ ์๋ ์ฑ์ง์ ๊ฐ์ง๊ณ ์๊ณ , ์ด๊ฑด ์๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ์ฌ์ฉ๋ฐฉ์๊ณผ ์ผ์นํ๊ธฐ
์๋ฐ์คํฌ๋ฆฝํธ์์ ๊ฐ์ ํ์ ์ ๊ฐ์ง์ง๋ง ๋ณ์๋ ๋ณ๋์ ํ์ ์ ๊ฐ์ง์ง์์ํ์ ์คํฌ๋ฆฝํธ๋ ์ด ๋ณ์์ ํ์ ์ ์ง์ ํ ์ ์๋ ํ์ ์์คํ ์ฒด๊ณ๋ฅผ ๊ตฌ์ถํจ\-> ํน์ ํ์ ์ ์ง์ ํ ๋ณ์์ ํด๋น ํ์ ์ ๊ฐ๋ง ํ ๋น ๊ฐ๋ฅ์๋ฐ์คํฌ๋ฆฝํธ์๋ boolean ์์ ๊ฐ์ ์๋์ง๋ง ํ ๋ณํ์ ํตํด
์ ์ ํ์ ๊ณผ ๋์ ํ์ ํ์ ์ ๊ฒฐ์ ํ๋ ์์ ์ ๋ฐ๋ผ ํ์ ์ ๋ถ๋ฅ ์ ์ ํ์ (static type) ๋ชจ๋ ๋ณ์์ ํ์ ์ด ์ปดํ์ผ ํ์์ ๊ฒฐ์ . ์ฝ๋ ์์ค์์ ํ์ ์ ๋ช ์ํด์ค์ผ ํจ ๋ฒ๊ฑฐ๋กญ์ง๋ง ์ปดํ์ผํ์์ ํ์ ์๋ฌ๋ฅผ ๋ฐ๊ฒฌใดํ ์ ์๊ธฐ ๋๋ฌธ์ ํ๋ก๊ทธ๋จ์ ์์ ์ฑ์ ๋ณด์ฅ ๋์
์์ผ๋ก ์ฐํ์ค๋ฅผ ์ฝ์ผ๋ฉด์ ์ค์ํ ๋ด์ฉ๋ค์ ๋ด ๋ง๋ก ์ ์ด๋์ ๊ณํ!...๋จผ์ ...JS๊ฐ ์ด๋ป๊ฒ ๋ธ๋ผ์ฐ์ ์์ ๋๋ฆฌ ์ฌ์ฉ๋๊ธฐ ์์ํ์๊น?๋ ๊ฒฝ์ ์ ์ฒด์์ ๊ฐ์์ ๋ธ๋ผ์ฐ์ ์ ์๋ก์ด ๊ธฐ๋ฅ์ ๋น ๋ฅด๊ฒ ๋๋ฆฌ๊ธฐ ์์. ์ถ๊ฐ๋ ๊ธฐ๋ฅ์ ๊ฐ์์ ๋ธ๋ผ์ฐ์ ์์๋ง ๋์(๋ค๋ฅด๊ฒ ๋์ or ํฌ๋ก์ค
๊ธฐ์ ์ง๋ฌธJavaScript ์์ Function์์ this๋?ํ์ฌ ํจ์๋ฅผ ๋ถ๋ฅธ ๊ฐ์ฒด๊ฐ ๋๊ตฌ์ธ์ง๋ฅผ ๋ํ๋ด๋ฉฐ ๊ณ ์ ๊ฐ์ด ์๋๋๋ค. ํจ์ ๋ด this๋ ํจ์๊ฐ ํธ์ถ๋๋ ๋ฐฉ์์ ๋ฐ๋ผ ๊ฒฐ์ ๋ฉ๋๋ค.this๋ ๊ธฐ๋ณธ์ ์ผ๋ก window์์ผ๋ฐ ํจ์ ๋ด์์ ํผ์ this๋ฅผ ์ ์ธํ๋ฉด, ๊ทธ
๊ธฐ์ ์ง๋ฌธ ํด๋ก์ ๊ฐ ๋ญ๊ฐ์?ํด๋ก์ ๋ ํจ์์ ๊ทธ ํจ์๊ฐ ์ ์๋ ๋ ์์ปฌ ํ๊ฒฝ์ด ๊ฒฐํฉ๋ ์ํ๋ฅผ ๋งํฉ๋๋ค.์ด ์ํ๋ก ์ธํด ํจ์๋ ์์ ์ด ์ ์๋ ๋น์์ ๋ณ์๋ฅผ ๊ธฐ์ตํ๊ณ , ๊ทธ ๋ณ์์ ์ ๊ทผํ ์ ์๋ ๊ฒ์ ๋๋ค.MDN ๊ณต์ ๋ฌธ์ํด๋ก์ ๋ ํจ์์ ๊ทธ ํจ์๊ฐ ์ ์ธ๋ ์ฃผ๋ณ ์ํ(๋ ์์ปฌ ํ๊ฒฝ,
๋ณ๊ฒฝ์ ์ ์ฐ ๋ณ๊ฒฝ์ ์์ธกํ๋ฉด ์๋๊ณ , ๋ณ๊ฒฝ์ ๋์ํ๋ ์ปดํฌ๋ํธ๋ฅผ ์ ์ํด์ผ๋จ > 1. Headless ๊ธฐ๋ฐ์ ์ถ์ํ ํ๊ฐ์ง ์ญํ ๋ง ํ๊ธฐ ๋๋ฉ์ธ ๋ถ๋ฆฌํ๊ธฐ ์ปดํฌ๋ํธ๋ ๋ฌด์์ ํ ๊น? >๋ฐ์ดํฐ ๊ด๋ฆฌ : ์ธ๋ถ์์ ๋ค์ด์ค๋ ๋ฐ์ดํฐ, ์ํ ๊ฐ์ ๋ด๋ถ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌ UI :

:HTML์ฝ๋์ React์ธ JS์ฝ๋๋ฅผ ์๋ก ๋งค์นญ์ํค๋ ๊ณผ์ ์๋ฒ์ฌ์ด๋์์ ํด๋ผ์ด์ธํธ ์ฌ์ด๋ํํ ๋ ๋๋ง ๋ ์ ์ ํ์ด์ง, ๋ฒ๋ค๋ง๋ JSํ์ผ ๋ณด๋. ํด๋ผ์ด์ธํธ๋ ๋ฐ์์ HTML,JS ์๋ก ๋งค์นญ์ ์ ์ธ ํ์ด์ง์ ๋ฌผ์ ์ฃผ์ด ๋์ ์ผ๋ก ๋ง๋ฆ์ด๊ฒ์ ๋ํด ์์๋ณด๊ธฐ ์ ๋ฆฌ์ํธ์ ์นํ์ด์ง
์ต๊ทผ next.js ํ๋ก์ ํธ์์ ์นํ์ด์ง ์ฑ๋ฅ์ ์ฌ๋ฆฌ๊ธฐ ์ํด ์ด๊ฒ์ ๊ฒ ํ๋ค ๊ธฐ์ด์ ์ธ ์ง์์ด ํํํ์ง ์๋ค๋ ๋๋์ ๋ฐ์ ์ด ํฌ์คํธ๋ฅผ ์์ฑ ์นํ์ด์ง๊ฐ ๋ ๋๋ง ๋๋ ๊ณผ์ > 1. HTML parser๊ฐ HTML์ ๋ฐํ์ผ๋ก DOM tree๋ฅผ ๊ทธ๋ฆผ CSS parser๊ฐ C

SSR์ ์ฌ์ฉํ๋ฉด JavaScript ๋ฒ๋ค์ด ๋ก๋๋๊ณ ์คํ๋๊ธฐ ์ ์ ์ฌ์ฉ์๊ฐ ํ์ด์ง์ ์ฝํ ์ธ ๋ฅผ ๋ณผ ์ ์์๋ชฉ์ : ์ฑ์ ์ฌ์ฉ์๊ฐ ์ฝํ ์ธ ๋ฅผ ๋ ๋นจ๋ฆฌ ๋ณด๊ณ ํจ์ฌ ๋ ๋น ๋ฅด๊ฒ ์ํธ ์์ฉ์ ์์์ ํ๋ธ,๋ค์ด๋ฒ ๋ฑ๋ฑ ํ ์ฌ์ดํธ์ ๊ฒฝ์ฐ, ๋๋ฆฐ ๋คํธ์ํฌ ํ๊ฒฝ์์๋ ๋ทฐํฌ์ธํธ์ ์ผ๋ถ๋ถ์