โ ํ๋ก์ ํธ ๊ตฌ์กฐ
- package.json >> build.gradle / pom.xml ๊ณผ ๋์ผ (๋ผ์ด๋ธ๋ฌ๋ฆฌ , ๋ฒ์ ๋ช ์)
๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ทธ ๋ฒ์ ์ ๋ช ์ํ์ฌ ํ๋ก์ ํธ์ ์์กด์ฑ์ ๊ด๋ฆฌํ๋ ํญ๋ชฉ
- dependency : ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ทธ ๋ฒ์ ์ ๋ช ์ํ์ฌ ํ๋ก์ ํธ์ ์์กด์ฑ์ ๊ด๋ฆฌํ๋ ํญ๋ชฉ
- scripts ๋ช ๋ น๋ฌธ : ์์ฃผ ์ฌ์ฉ๋๋ ๋ช ๋ น์ด๋ฅผ ์คํฌ๋ฆฝํธ๋ก ์ ์ํ์ฌ ์ฝ๊ฒ ์คํํ ์ ์๋๋ก ํ๋ ํญ๋ชฉ
- eslintConfig : ๊ธฐ๋ณธ ํ๋ก๊ทธ๋จ ๋์ (์ฝ๋ ํ์ง์ ๋ณด์ฅํ๊ธฐ ์ํด JavaScript ์ฝ๋ ์คํ์ผ์ ๊ฒ์ฌํ๋ ๋๊ตฌ์ธ ESLint์ ๊ธฐ๋ณธ ์ค์ ์ ์ ์ํ๋ ํญ๋ชฉ)
- browserlist : ํ๋ก์ ํธ๊ฐ ์ง์ํด์ผ ํ๋ ๋ธ๋ผ์ฐ์ ์ ๋ฒ์๋ฅผ ๋ช ์ ( ๋ธ๋ผ์ฐ์ ํธํ์ฑ์ ์ ์งํ๊ธฐ ์ํด ํ์ )
โ web pack loader
์๋ ๋ฆฌ๋ก๋๋จ (์ ์ฅํ๋ฉด)
์นํฉ ๋ก๋๋ ์ง์ ์ค์น๊ฐ ๊ฐ๋ฅํ๋ค.
๋ณด์ผ๋ฌ ํ๋ ์ดํธ๋ก ๋ง๋ค ๊ฒฝ์ฐ๋ ์๋ ์ค์ ๋๋ค.
์นํฉ ๋ก๋์์ babel ๋ผ๋ ๋๊ตฌ๊ฐ es6๋ฅผ es6๋ก ๋ค์ด๊ทธ๋ ์ด๋ ์ํด
โnpm
ํจํค์ง ๊ด๋ฆฌ์
๋ค์ด or ๊ด๋ฆฌ
โnpx ?
npm ์ ๊น๋ ค์๋ ํ๋์ ํจํค์ง๋ฅผ ์คํ์์ผ์ฃผ๋ ์คํ ๋๊ตฌ ์ด๋ค.
โyam
npm, npx ๊ฒฐ๊ณผ ๋ค๋ฅธ ํจํค์ง์ธ๋ฐ
(maven, gradle ๊ฐ์ด ๋๋ค๋ฅธ ํจํค์ง ๊ด๋ฆฌ์์ด๋ค)
โpublic
css > public ํด๋์ ๋ฃ์ด์ ์ฌ์ฉ (์ ํธ๋๋๋ฐฉ์์์๋
โsrc
app .js >
index.js >
- app.js export
- index.js import
- <app/> root ๋๋ํจ์์ ์ง์ด๋ฃ์
- index.html ์ฌ์ด์ ํ๋ฉด์ด ๊ทธ๋ ค์ง