๐ ๏ธ ๋๋ฒ๊น
Parcel์ ๊ธฐ๋ณธ์ ์ผ๋ก ์์ค๋งต์ ์๋์ผ๋ก ์์ฑํ๊ธฐ ๋๋ฌธ์, Parcel์ ์ด์ฉํ์ฌ ๋๋ฒ๊น ์ ์ค์ ํ๋ฉด ๋๋ถ๋ถ์ ์์ญ์ ์ต์ํ์ ๋ ธ๋ ฅ์ผ๋ก ๋๋ฒ๊น ํ ์ ์์ต๋๋ค.
ํฌ๋กฌ ๊ฐ๋ฐ์ ๋๊ตฌ
์์ค๋งต์ด ๊ฐ๋ฅํ๋ฉด, ๋ถ๊ฐ์ ์ธ ์ค์ ์ด ํ์์์ต๋๋ค.
์๋ฅผ ๋ค๋ฉด, ๋ค์๊ณผ ๊ฐ์ ํด๋ ๊ตฌ์ฑ์ด ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
โโโ package-lock.json
โโโ package.json
โโโ src
โโโ index.html
โโโ index.ts
index.ts
๋ ๋ค์์ ํฌํจํฉ๋๋ค.
const variable: string = "Hello, World!";
document.getElementById("greeting").innerHTML = variable;
๊ทธ๋ฆฌ๊ณ index.html
์ ๋ค์์ ํฌํจํฉ๋๋ค.
<!DOCTYPE html>
<html>
<head>
<title>Chrome Debugging Example</title>
</head>
<body>
<h1 id="greeting"></h1>
<script src="./index.ts"></script>
</body>
</html>
(package.json
์๋ parcel-bundler
๋ง ์ค์น๋์ด ์์ต๋๋ค.)
์ด ์ค์ ์ผ๋ก, parcel src/index.html
์ ์ค์ ํ๊ณ , ์์ค์ฝ๋์์ breakpoint๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค.
Visual Studio code
Chrome ๊ฐ๋ฐ์ ๋๊ตฌ ์ค์ ๊ณผ ์ ์ฌํ ํด๋ ๋ฐ ํ์ผ ๊ตฌ์ฑ์ ๊ฐ์ ํ๋ฉด, launch.json
์ Debugger for Chrome ๊ณผ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.
{
// ๊ฐ๋ฅํ ์์ฑ์ ์ฌ์ฉํ๊ธฐ ์ํด ์ธํ
๋ฆฌ์ผ์ค๋ฅผ ์ฌ์ฉํฉ๋๋ค.
// ๊ธฐ์กด ์์ฑ์ ์ฌ์ฉํ๋ ค๋ฉด ๋ง์ฐ์ค๋ฅผ ์์ฑ ์์ ์ฌ๋ฆฝ๋๋ค.
// ๋ ๋ง์ ์ ๋ณด๋ฅผ ๋ณด์๋ ค๋ฉด https://go.microsoft.com/fwlink/?linkid=830387 ์ ์ดํด๋ณด์ญ์์ค
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"request": "launch",
"name": "Launch Chrome against localhost",
"url": "http://localhost:1234",
"webRoot": "${workspaceFolder}",
"breakOnLoad": true,
"sourceMapPathOverrides": {
"../*": "${webRoot}/*"
}
}
]
}
์ค์ ํ ๋ค์, index.html
์ ์ง์
์ (์ํธ๋ฆฌ ํฌ์ธํธ)๋ก ์ค์ ํ์ฌ Parcel ๊ฐ๋ฐ ์๋ฒ๋ฅผ ์คํํฉ๋๋ค.
$ parcel src/index.html
๋ง์ง๋ง ๋จ๊ณ๋ ๋๋ฒ๊ทธ ํจ๋์์ ๋ น์ ํ์ดํ๋ฅผ ํด๋ฆญํ์ฌ ๋๋ฒ๊น ํ๋ก์ธ์ค๋ฅผ ์คํ์ํค๋ ๊ฒ์ ๋๋ค. ์ด์ ์ฝ๋์์ breakpoint๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. ์ต์ข ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ์ ์ฌํฉ๋๋ค.
๋ฌธ์์ ๊ฐ์ ์ ๋์์ฃผ์ธ์
๋น ์ง์ ์ด ์๊ฑฐ๋ ๋ช ํํ์ง ์์ ๊ฒฝ์ฐ, ์น ์ฌ์ดํธ ์ ์ฅ์์ ์ด์๋ฅผ ์ ๊ธฐํด ์ฃผ์๊ฑฐ๋ ํ์ด์ง๋ฅผ ์์ ํด ์ฃผ์ธ์..