CommonJS (CJS)์ญ์ฌ์ ๋ฐฐ๊ฒฝ: CommonJS๋ Node.js ํ๊ฒฝ์์ ๋ชจ๋์ ๊ด๋ฆฌํ๊ธฐ ์ํด ๋์
๋ ๋ชจ๋ ์์คํ
์
๋๋ค.๋ชจ๋ ์ฌ์ฉ ๋ฐฉ๋ฒ:๋ชจ๋ ๊ฐ์ ธ์ค๊ธฐ: require() ํจ์๋ฅผ ์ฌ์ฉํด ๋ค๋ฅธ ๋ชจ๋์ ๊ฐ์ ธ์ต๋๋ค.const math = require('./math');๋ชจ๋ ๋ด๋ณด๋ด๊ธฐ: module.exports๋ฅผ ์ฌ์ฉํด ๋ชจ๋์ ๊ธฐ๋ฅ์ ๋ด๋ณด๋
๋๋ค.module.exports = { add: (a, b) => a + b, subtract: (a, b) => a - b,};๋๊ธฐ์ ๋ก๋ฉ: CommonJS๋ ๋๊ธฐ์ ์ผ๋ก ๋ชจ๋์ ๋ก๋ฉํฉ๋๋ค. ์ฆ, ๋ชจ๋์ ๊ฐ์ ธ์ค๋ ์ฝ๋๊ฐ ์คํ๋๋ฉด ํด๋น ๋ชจ๋์ ์ฆ์ ๋ถ๋ฌ์ค๊ณ ์คํํฉ๋๋ค.Node.js ํ๊ฒฝ์์ ๋๋ฆฌ ์ฌ์ฉ๋จ: Node.js๋ ๊ธฐ๋ณธ์ ์ผ๋ก CommonJS๋ฅผ ์ง์ํฉ๋๋ค.ECMA..
์ ์ฒด ๊ธ
๋ด์์์ ๋ด์ค๋ ํฐ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ง๋ ๊ณ๊ธฐNext App Router๋ฅผ ์ด์ฉํด์ ์ฒ์ ํํ๋ก์ ํธ๋ฅผ ์งํํ๋๋ฐ ๊ธฐ์ ์คํ์ ๊ดํด์ ํ์๋ค๊ณผ ๋
ผ์๋ฅผ ํ๋ ์ค ์ด์ React๋ก๋ง ์์
์ ํ์ ๋์ ๊ฐ์ด Axios๋ฅผ ํ์ฉํ๋ ค ํ๋๋ฐ Next App Router์์ ์ ์ฉํ๋ ค๊ณ ๋ณด๋ ๋ฌธ์ ์ ์ด ์์๋ค. ๋ฐ๋ก Next App Router๋ ์์ฒด์ ์ผ๋ก fetch๋ฅผ ํ์ฅ์์ ์ฐ๊ณ ์๋๋ฐ ๊ทธ ์์๋ ๋ค์๊ณผ ๊ฐ๋ค.const data = await fetch('~~', { next: {revalidate: 300}})์์ ๊ฐ์ Next ์บ์ฑ์๋ฆฌ๊ฐ ๊ถ๊ธํ๋ค๋ฉด ์ด์ ์ ์ด ๊ธ์ธ ์บ์ฑ์๋ฆฌ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ์กฐํ๋ฉด ์ข๋ค.์ผ๋จ ๊ทธ๋๋ ํ๋ก์ ํธ ๊ตฌํ์ด ์ฐ์ ์ด์๊ธฐ์ ํ์ ๋ชจ๋ fetch๋ฅผ ์ฐ๊ธฐ๋ก ํ๋ค.ํ๋ก์ ํธ๋ฅผ ๊ตฌํํ๋ฉด์ fetch๋ฅผ ์ฌ์ฉํ๋ค๋ณด๋ ๋ค์๊ณผ ๊ฐ์ ๋ถํธํจ..
์๊ตฌ ์ฌํญ๊ฐ์ธ ์ค์ ํ์ด์ง๋ฅผ ๋ด๋นํ๊ณ ์๋๋ฐ ๋ชจ๋ฐ์ผ ์ํฉ์์ ๋ชจ๋ฌ์ Drawerํ์์ผ๋ก ๋ฐ๊พธ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค๊ณ ํ์๋ค๊ณผ ํ์๋ฅผ ํตํด ๊ฒฐ๋ก ์ด ๋ฌ์๋ค. ํ์ฌ์ํฉ์ ๋ชจ๋ฐ์ผ ๋ชจ๋ฌ์ ๋ค์๊ณผ ๊ฐ์๋ค ์์ ์ฌ์ง๊ณผ ๊ฐ์ ๋ชจ๋ฌ์ด ์ฌ๋ฌ๊ฐ ์๋๋ฐ ๊ธฐ์กด์๋ ๋ง๊ฐ๊ธฐ๊ฐ์ด ์์ด์ ๊ตฌํํ๋๋ฐ๋ง ์ง์คํ๋ ๋๋จธ์ง ๊ฐ ๋ชจ๋ฌ๋ง๋ค ๊ฐ๊ฐ์ ์ปดํฌ๋ํธ๊ฐ ์์๋ค ์ด๋ฌํ ์ํฉ์ด ๋ฐ์ํ๋๊น ๋ฌธ์ ์ ์ด ๋ชจ๋ฐ์ผ ํ๋ฉด์์ Drawer ๋ชจ๋ฌ์ ๊ตฌํํ๋ ค๊ณ ํ๋ฉด ๊ฐ๊ฐ์ ์ปดํฌ๋ํธ๋ณ๋ก Drawer ํ์์ ๋ชจ๋ฌ์ ๊ตฌํํด์ผํ๋ค.์ด๋ฅผ ํด๊ฒฐํ๊ธฐ์ํด ์ฌ๋ฌ ๋ ํผ๋ฐ์ค๋ฅผ ์ฐพ๋์ค ๋ํ์ ์ธ ํจํด 2๊ฐ์ง๋ฅผ ์ฐพ์๋ค ๋ฐ๋ก ์ปดํ์ด๋ํจํด๊ณผ render props ํจํด์ด๋ค. ๋จผ์ ๊ฐ๋จํ ์ค๋ช
์ ์๊ธฐํ๊ณ ํด๊ฒฐ๋ฐฉ๋ฒ์ ์์๋ณด๋๋ก ํ์.Render Prop ํจํดRender Prop ํจํด์ด๋๋ ๋ ํ๋กญ..