์ ๊ทผ (์์ฝ)
1. Automatic Installation_NextJS app ๋ง๋ค๊ธฐ
(1.1) create-next-app ๋ช ๋ น์ด ์ฌ์ฉ
2. Manual Installation_ํ์ ํจํค์ง ์ค์น
(2.1). npm install (next@latest / react@latest / react-dom@latest)
(2.2). package.json ํ์ผ ์ด๊ณ scripts ์ถ๊ฐํ๊ธฐ
(2.3). scripts ์์ธ๋ด์ฉ ์ ๋ฆฌ
3. ํ๋ก์ ํธ ๋ด, app ํด๋ ์์ฑํ๊ธฐ
(3.1). app/layout.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
(3.2). app/page.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
4. (optional) ํ๋ก์ ํธ ๋ด, public ํด๋ ์์ฑํ๊ธฐ
(4.1). app/layout.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
(4.2). app/page.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
5. Development Server ์คํ(Run)
(5.1). npm run dev ๋ช ๋ น์ด ์ฌ์ฉ
(5.2). http://localhost:3000 ์ ์
(5.3). app/layout.tsx / app/page.tsx ์์ ํด๋ณด๊ธฐ
๋ฐฉ๋ฒ
1. Automatic Installation_NextJS app ๋ง๋ค๊ธฐ
(1.1) create-next-app ๋ช ๋ น์ด ์ฌ์ฉ
'npx create-next-app'์ด๋ผ๋ ๋ช ๋ น์ด๋ฅผ ํตํด Next.js app ํ๋ก์ ํธ๋ฅผ ์์ฑํฉ๋๋ค.
๊ฒฐ๊ณผ์ ์ผ๋ก ๋ง๋ค์ด์ง sets up๋ค์ ์๋์ผ๋ก ๊ตฌ์ฑ์ด ๋ฉ๋๋ค.
(npx create-next-app ๋ค์ ๋ถ์ '@latest'๋ ๊ฐ์ฅ ์ต์ ์ ๋ฒ์ ์ ์๋ฏธํฉ๋๋ค.)
Next.js app์ ๋ช ์นญ์ ์์ฑํด์ค์ผ๋ก ์์ํด,
Next.js app์ ๊ธฐ๋ณธ์ผ๋ก ๊ตฌ์ฑ์ด ๋์ด์๋ TypeScript, ESLint, Tailwind CSS๋ฅผ ๊ตฌ์ฑํ ์ง ๋ฌป๊ธฐ๋ ํฉ๋๋ค.
Next13์ด์ ์ ์ฌ์ฉํ๋ "src/"๋ฅผ ์ ํํ ์ง, Next13์ดํ์ ์ฌ์ฉ๋ App Router๋ฅผ ์ ํํ ์ง ๊ฒฐ์ ํ ์๋ ์์ต๋๋ค.
๊ทธ๋ ๊ฒ, NextJS ํ๋ก์ ํธ app์ ๊ตฌ์ฑ(์์ฑ)ํ๊ณ ๋๋ฉด, ์์๊ฐ์ด ์๋์ผ๋ก ๊ตฌ์ฑ๋ sets up ๋ด์ญ์ ํ์ธํ ์ ์๊ฒ ๋ฉ๋๋ค.
2. Manual Installation_ํ์ ํจํค์ง ์ค์น
(2.1). npm install (next@latest / react@latest / react-dom@latest)
(2.2). package.json ํ์ผ ์ด๊ณ scripts ์ถ๊ฐํ๊ธฐ
(2.3). scripts ์์ธ๋ด์ฉ ์ ๋ฆฌ
- dev : next dev ๋ Next.js๋ฅผ ๊ฐ๋ฐ๋ชจ๋์์ ์คํ(Run)์ํค๋ ๊ฒ
- build : next build๋ ๋ฐฐํฌ ์ฌ์ฉ์ ์ํด ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋(build)์ํค๋ ๊ฒ
- start : next start๋ Next.js ๋ฐฐํฌ ์๋ฒ๋ฅผ ์คํ์ํค๋ ๊ฒ
- lint : Next.js๊ฐ ๋ด์ฅํ๊ณ ์๋ ESLint ๊ตฌ์ฑ์ set up ์ํค๋ ๊ฒ
3. ํ๋ก์ ํธ ๋ด, app ํด๋ ์์ฑํ๊ธฐ
(3.1). app/layout.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
(3.2). app/page.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
4. (optional) ํ๋ก์ ํธ ๋ด, public ํด๋ ์์ฑํ๊ธฐ
(4.1). app/layout.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
(4.2). app/page.tsx ๋ด์ ์ฝ๋ ์ถ๊ฐ
5. Development Server ์คํ(Run)
(5.1). npm run dev ๋ช ๋ น์ด ์ฌ์ฉ
(5.2). http://localhost:3000 ์ ์
(5.3). app/layout.tsx / app/page.tsx ์์ ํด๋ณด๊ธฐ
์์ฑํ ํ๋ก์ ํธ ๋ช ์ผ๋ก์ ๊ฒฝ๋ก(path) ์ง์ ํ, 'npm run dev' ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด์ค๋๋ค.
์ดํ, ๊ธฐ๋ณธ url๋ก ํ๋ http://localhost:3000 ์ ์ ์ํด ํ๋ก์ ํธ๊ฐ ์ ์์ ์ผ๋ก ๊ตฌ๋์ด ๋๋์ง ํ์ธ์ ํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก layout.tsx์ page.tsx๋ฅผ ์์ ํด ๋ณ๊ฒฝ์ฌํญ์ด ์ ์ฉ์ด ๋๋์ง ํ์ธํฉ๋๋ค.
์ด์์ผ๋ก, NextJS๋ฅผ ํ์ฉํด app ์ด๊ธฐ์ธํ ๊ณผ ์ค์ ์์ ์ ํ์ตํด๋ดค์ต๋๋ค.
์ถ๊ฐ ์ง๋ฌธ์ ๋๊ธ์ ๋ฌ์์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค^^
์ค๋๋ ํ์ดํ ์ ๋๋ค!
'๐ป DEV > NextJS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[NEXT.js 14] 1. Image ํ๊ทธ ๊ด๋ จ <Image> (0) | 2024.06.11 |
---|---|
[Next.js 13] ์ปดํฌ๋ํธ ์์ฑ ํ, page์์ ์ปดํฌ๋ํธ์ <HTML> ํ๊ทธ, ์์ฑ๊ฐ ์ฌ์ฉ๋ฒ (0) | 2023.09.27 |
[Next.js 13] tailwind css Plugin ์์ฑ & ์ ์ฉ (0) | 2023.09.27 |
[NextJS] EsLint Delete `โ` eslint (prettier/prettier) ์๋ฌ ํด๊ฒฐํ๊ธฐ (0) | 2023.03.09 |
[NextJS] EsLint ์ค์ ํ๊ธฐ (0) | 2023.02.28 |
๋๊ธ