์ด ํ๋ก์ ํธ์ after.js ์ฌ์ด์ ๊ด๊ณ๋ฅผ ์ค๋ช ํด ์ฃผ์๊ฒ ์ต๋๊น? ์ฌ๋์ด ๋ ์ค ํ๋๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ๊ฒฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น? ์ด ํ๋ก์ ํธ๊ฐ after.js์ ๋จ์ ์๊ฑฐ๋ ์์ ํ ํก์๋๋ ๊ฒ์ด ๋ณด์ ๋๊น? (์ด ์ปค๋ฐ ๋๋ฌธ์ ๋ฌป์ต๋๋ค https://github.com/jaredpalmer/after.js/commit/9406e78c4e7b86a2797ed294a757ef319b4ee93b)
Razzle์ ์๋ฌด๋ฐ๋ ๊ฐ์ง ์์ต๋๋ค. cars.com, coinbase, ๊ทธ๋ฆฌ๊ณ ์ ๊ฐ ์์ ํ๊ณ ์๋ ๋ชจ๋ ์ฌ์ดํธ์์ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ๋ด ํ๋ก์ ํธ ์ค ํ๋๋ฅผ After๋ก ์ฎ๊ธฐ๊ณ ์ถ์ง๋ง ๊ทธ๋ ๊ฒ ํ๊ธฐ ์ ์ After์์ ๋ง์ ์์ ์ ํด์ผ ํฉ๋๋ค.
๋ด๊ฐ ์์ง ์์๋ด์ง ๋ชปํ ๋ ๊ฐ์ง ํฐ ์ง๋ฌธ์ 1) Razzle๋ก ๋ฌ์ฑํ ์ ์๋ ๋ ๋จ์ ์ธ After.js ์ต์ ํ๊ฐ ์๋์ง ์ฌ๋ถ์ 2) ์ธ์ ๊ฐ ์ผ๋ถ Node.js ๋ฏธ๋ค์จ์ด๋ก ๋ฆฌํฉํ ๋ง๋ ์ ์๋์ง ์ฌ๋ถ์ ๋๋ค.
๋ก๋๋งต:
์ ์๊ฐ์ ์ฐ๋ฆฌ ๋๋ถ๋ถ์ Razzle์ ์ํ์ง๋ง ์๋ฒ ์ธก ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ(getInitialProps)๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋ค, ๋ ์ธ๊ณ์ ์ฅ์ ์ ๋๋ค. ๋ฐ๋ผ์ after.js๋ ์ง์ฐ ๋ก๋ ๋์ฐ๋ฏธ, ๋ ๋ ๋ฏธ๋ค์จ์ด ๋ฐ ๊ฒฝ๋ก ๋์ฐ๋ฏธ๋ก ๋ฆฌํฉํฐ๋ง๋๊ณ razzle๋ก ๊ฐ์ ธ์ค๊ฑฐ๋ ๊ธฐ๋ณธ ์์ ๊ฐ ๋ ์ ์์ต๋๋ค.
ํ! ๊ทธ๋์ ์ฌ๊ธฐ ์คํ ์์ค์ ์ผ์ ์ ๋ฌด ๋ฐ ์ํ ์ฌ์ด์ ๊ฑฐ๋๊ฐ ์์ต๋๋ค. ๊ด๋ฆฌํด์ผ ํ ๊ฒ์ด ๋ง๊ธฐ ๋๋ฌธ์ GitHub ๋ด์ ์ฌ์ฉํ์ฌ ์ฌ๊ธฐ์ ๊ธฐ์ ๋ช ๊ฐ์ง๋ฅผ ์๋ํํฉ๋๋ค. ์ด ํน์ GitHub ๋ด์ ์ต๊ทผ ํ๋์ด ํ๋์ ์์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ถ์คํ ๊ฒ์ผ๋ก ํ์ํ ๊ฒ์ ๋๋ค. ๋ฉฐ์น ๋์ ๋ ์ด์ ํ๋์ด ์์ผ๋ฉด ํ์๋ฉ๋๋ค. ์ด ์์ ์ ๊ฐ์ธ์ ์ผ๋ก ์ฌ๊ฐํ๊ฒ ๋ฐ์๋ค์ด์ง ๋ง์ญ์์ค. ์ด๊ฒ์ ์์ ํ ์๋ํ๋ ์์ ์ ๋๋ค. ์ด๊ฒ์ด ์ค์๋ผ๋ฉด ๋๊ธ, DM, ์บ๋ฆฌ์ด ๋น๋๊ธฐ ๋๋ ์ฐ๊ธฐ ์ ํธ๋ฅผ ๋ณด๋ด์ฃผ์ญ์์ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
Razzle์ ์๋ฌด๋ฐ๋ ๊ฐ์ง ์์ต๋๋ค. cars.com, coinbase, ๊ทธ๋ฆฌ๊ณ ์ ๊ฐ ์์ ํ๊ณ ์๋ ๋ชจ๋ ์ฌ์ดํธ์์ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ๋ด ํ๋ก์ ํธ ์ค ํ๋๋ฅผ After๋ก ์ฎ๊ธฐ๊ณ ์ถ์ง๋ง ๊ทธ๋ ๊ฒ ํ๊ธฐ ์ ์ After์์ ๋ง์ ์์ ์ ํด์ผ ํฉ๋๋ค.
๋ด๊ฐ ์์ง ์์๋ด์ง ๋ชปํ ๋ ๊ฐ์ง ํฐ ์ง๋ฌธ์ 1) Razzle๋ก ๋ฌ์ฑํ ์ ์๋ ๋ ๋จ์ ์ธ After.js ์ต์ ํ๊ฐ ์๋์ง ์ฌ๋ถ์ 2) ์ธ์ ๊ฐ ์ผ๋ถ Node.js ๋ฏธ๋ค์จ์ด๋ก ๋ฆฌํฉํ ๋ง๋ ์ ์๋์ง ์ฌ๋ถ์ ๋๋ค.
๋ก๋๋งต: