5. Parcel & ESLint

  • Bundler(๋ฒˆ๋“ค๋Ÿฌ)

    • Parcel

  • Lint(๋ฆฐํŠธ)

    • ESLint

Parcel

Parcel ๊ณต์‹๋ฌธ์„œ

Zero Configuration

  • ํŠน๋ณ„ํ•œ ์„ค์ • ์—†์ด ๋ฐ”๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋นŒ๋“œ ๋„๊ตฌ. ๋‚ด๋ถ€์ ์œผ๋กœ SWC๋ฅผ ์‚ฌ์šฉํ•ด ๊ธฐ์กด ๋„๊ตฌ๋ณด๋‹ค ๋น ๋ฅด๋‹ค(ES Module์„ ์ ๊ทน ํ™œ์šฉํ•˜๋Š” Vite๋„ ์—„์ฒญ๋‚˜๊ฒŒ ๋น ๋ฆ„).

์•„๋ž˜ 2๊ฐ€์ง€ ์„ค์ •์€ ํ•˜๋Š” ๊ฒŒ ์ข‹๋‹ค.

  • package.json ํŒŒ์ผ์— source ์†์„ฑ ์ถ”๊ฐ€.

"source": "./index.html",
  • parcel-reporter-static-files-copy ํŒจํ‚ค์ง€ ์„ค์น˜ ํ›„ .parcelrc ํŒŒ์ผ ์ž‘์„ฑ. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด static ํด๋”์˜ ํŒŒ์ผ์„ ์ •์  ํŒŒ์ผ๋กœ Servingํ•  ์ˆ˜ ์žˆ๋‹ค(์ด๋ฏธ์ง€ ๋“ฑ Assets).

{
  "extends": ["@parcel/config-default"],
  "reporters": ["...", "parcel-reporter-static-files-copy"]
}

๋นŒ๋“œ + ์ •์  ์„œ๋ฒ„ ์‹คํ–‰

npx parcel build

npx servor ./dist

ESLint

  • ๋ฆฐํŠธ ๋˜๋Š” ๋ฆฐํ„ฐ

  • ESLint๊ฐ€ TSLint๋ฅผ ํก์ˆ˜ํ–ˆ๋‹ค.

  • ์Šค์Šค๋กœ์˜ rules ๋งŒ๋“ค๊ธฐ.

ESLint ๊ณต์‹๋ฌธ์„œ

๋ฌด์—‡์„ ์œ„ํ•ด์„œ?

  • ์Šคํƒ€์ผ ํ†ต์ผ

  • ์ž ์žฌ์  ๋ฌธ์ œ ๋ฐœ๊ฒฌ

  • ๋ฒ ์ŠคํŠธ ํ”„๋ž™ํ‹ฐ์Šค ์ถ”์ฒœ โ†’ ์ตœ์‹  ํŠธ๋ Œ๋“œ๋ฅผ ํ•™์Šตํ•˜๋Š”๋ฐ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

VS Code ESLint extension

.vscode/settings.json ํŒŒ์ผ์„ ์ถ”๊ฐ€ํ•ด JS/TS ํŒŒ์ผ์„ ์ €์žฅํ•  ๋•Œ๋งˆ๋‹ค ESLint๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋ฌธ์ œ์ ์„ ๊ณ ์น˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

{
  "editor.rulers": [80],
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },
  "trailing-spaces.trimOnSave": true
}

์•„์ƒฌ์ด ์“ฐ๋Š” VS Code ๊ธฐ๋ณธ ์„ธํŒ…:

StyleLint & Prettier

  • ์ถ”๊ฐ€๋กœ ์ ์šฉํ•˜๊ธฐ

Last updated