vscode๋ก ๋
ธ๋ ์๋ฒ๋ฅผ ๋๋ฒ๊น
ํ๋ ค๊ณ ํฉ๋๋ค. yarn start --inspect
๋ฅผ ์คํํ๊ณ launch.json
์ ์ด ๊ตฌ์ฑ์ผ๋ก ๋๋ฒ๊ฑฐ๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค.
{
"type": "node",
"request": "attach",
"name": "Attach",
"port": 9230,
"outFiles": [
"${workspaceRoot}/build/**/*.js"
]
}
build/server.js(๋นจ๊ฐ์ ์ )์์ ์ค๋จ์ ์ ์ค์ ํ ์ ์์ง๋ง src/index.js(ํ์ ์)์์๋ ์ค์ ํ ์ ์์ต๋๋ค. ๋ด๊ฐ ์์ค๋งต์ ๋ฌด์์ ์๋ชปํ๊ณ ์๋ ๊ฑธ๊น์?:thinking: ?
ํ๋ก์ธ์ค ID๋ก ์ฐ๊ฒฐํ๋ ๋ฐ ํ์ด์ด ์์ต๋๋ค. true๋ก ์ค์ ํ ์ ์๋ sourceMaps
vscode ์คํ ๊ตฌ์ฑ ์ต์
๋ ์์ต๋๋ค.
{
"type": "node",
"request": "attach",
"name": "Attach by Process ID",
"processId": "${command:PickProcess}",
"restart": true
}
@ajsharp ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค :smiley_cat:
์ฒจ๋ถ ๋ฐฉ๋ฒ๊ณผ ๋์ผํฉ๋๋ค. src/index.js์ ์ค๋จ์ ์ ์ค์ ํ ์ ์์ต๋๋ค.
sourceMaps ์ต์ ์ ๊ธฐ๋ณธ์ ์ผ๋ก true์ ๋๋ค(https://code.visualstudio.com/docs/nodejs/nodejs-debugging#_source-maps ์ฐธ์กฐ).
๋ค๋ฅธ ์์ค ๋งต ์ค์ ์ ์ฌ์ฉํ์ฌ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ VSCode๊ฐ cheap-module-sourcemap
๋ฅผ ์ข์ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
razzle.config.js
:
module.exports = {
modify(config, { target, dev }, webpack) {
config.devtool = dev ? 'eval-source-map' : 'none';
return config;
}
}
launch.json
:
{
"name": "Attach to dev server",
"type": "node",
"request": "attach",
"protocol": "inspector",
"address": "localhost",
"port": 9230
}
yarn start --inspect --inspect-port 9230
๋ก ์๋ฒ๋ฅผ ์์ํฉ๋๋ค.
*์์ ๋จ, ์ค๋ฅ๋ฅผ ์ก์์ค @dguyonvarch ์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
@benhamlin :smile_cat: ์ ์๋ํฉ๋๋ค!
๋ฐฉ๊ธ ๊ทํ์ ์ค ๋ํซ์ ๋ค์๊ณผ ๊ฐ์ด ์์ ํ์ต๋๋ค.
module.exports = {
modify: (config, { target, dev }, webpack) => {
config.devtool = dev ? 'eval-source-map' : 'none';
return config
}
}
razzle/packages/razzle/config/createConfig.js
93ํ์์ ์ด๊ฒ์ ์ฐพ์์ต๋๋ค.
// Controversially, decide on sourcemaps.
devtool: 'cheap-module-source-map'
๊ทธ๋์ ๋๋ ๋
ผ์์ ์ฝ๋๋ค :wink: ! $# eval-source-map
cheap-module-source-map
์ธ ์ด์
์ด ๋ ์ํผ์ ๋ํ ์น์ ์ ๋ฌธ์์ ์ถ๊ฐํ๊ณ ์ถ์ ์ฌ๋์ด ์์ต๋๊น?
@jaredpalmer eval-source-map
๋ก ๋ณํฉ ์์ฒญ์ ์ ์ํด๋ ๋ฉ๋๊น? ์ด ๊ฒฝ์ฐ ๋ฌธ์๋ฅผ ์
๋ฐ์ดํธํ ํ์๊ฐ ์์ต๋๋ค.
ํ! ๊ทธ๋์ ์ฌ๊ธฐ ์คํ ์์ค์ ์ผ์ ์ ๋ฌด ๋ฐ ์ํ ์ฌ์ด์ ๊ฑฐ๋๊ฐ ์์ต๋๋ค. ๊ด๋ฆฌํด์ผ ํ ๊ฒ์ด ๋ง๊ธฐ ๋๋ฌธ์ GitHub ๋ด์ ์ฌ์ฉํ์ฌ ์ฌ๊ธฐ์ ๊ธฐ์ ๋ช ๊ฐ์ง๋ฅผ ์๋ํํฉ๋๋ค. ์ด ํน์ GitHub ๋ด์ ์ต๊ทผ ํ๋์ด ํ๋์ ์์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ถ์คํ ๊ฒ์ผ๋ก ํ์ํ ๊ฒ์ ๋๋ค. ๋ฉฐ์น ๋์ ๋ ์ด์ ํ๋์ด ์์ผ๋ฉด ํ์๋ฉ๋๋ค. ์ด ์์ ์ ๊ฐ์ธ์ ์ผ๋ก ์ฌ๊ฐํ๊ฒ ๋ฐ์๋ค์ด์ง ๋ง์ญ์์ค. ์ด๊ฒ์ ์์ ํ ์๋ํ๋ ์์ ์ ๋๋ค. ์ด๊ฒ์ด ์ค์๋ผ๋ฉด ๋๊ธ, DM, ์บ๋ฆฌ์ด ๋น๋๊ธฐ ๋๋ ์ฐ๊ธฐ ์ ํธ๋ฅผ ๋ณด๋ด์ญ์์ค.
๋นํ์ฑ ์ํ๋ก ์ธํด ProBot์ด ์ด๋ฅผ ์๋์ผ๋ก ๋ซ์์ต๋๋ค. ์ด๊ฒ์ด ์ค์๋ผ๋ฉด Holler, ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๋ค์ ์ด ๊ฒ์ ๋๋ค.
์ ๋ฐ์ดํธ: ์๋ฒ๋ฅผ ๋๋ฒ๊ทธํ๊ธฐ ์ํด vscode๋ฅผ ์ป๋ ๋ ์ข์ ๋ฐฉ๋ฒ์ ์ด๊ฒ์ launch.json์ ์ถ๊ฐํ๊ณ devtool ๊ตฌ์ฑ์ razzle์ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋๋ ๊ฒ์ ๋๋ค.
์ด๋ ๊ฒ ํ๋ฉด VSCode ๋๋ฒ๊น ๊ณผ ๋ ๋์ ํด๋ผ์ด์ธํธ ๋๋ฒ๊น ๊ฒฝํ์ด ๊ฐ๋ฅํฉ๋๋ค(eval-source-maps๋ React์ ๋๋ฒ๊ทธ ์ค๋ฅ ๋ทฐ์ด๋ฅผ ์ค๋จํจ).
"sourceMapPathOverrides": {
"webpack:///*": "${workspaceRoot}/*"
}
@benhamlin๋ ๊ฐ์ฌํฉ๋๋ค. Razzle์์ ์ํํธ ์ฌ์์( rs
then ENTER
)์ ์ํํ ํ VSCode์์ ๋๋ฒ๊ฑฐ ์ธ์คํด์ค์ ์ฝ๊ฒ ๋ค์ ์ฐ๊ฒฐํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
ATM์ ์ํํธ ๋ค์ ์์ํ๋ฉด VSCode ๋๋ฒ๊ฑฐ ์ฐ๊ฒฐ์ด ๋์ด์ง๋ฏ๋ก ์๋ฒ๋ฅผ ์ข ๋ฃํ๊ณ ๋ค์ ์์ํ ๋ค์ ๋๋ฒ๊ฑฐ๋ฅผ ๋ค์ ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค.
@benhamlin ์ด ๊ตฌ์ฑ์ผ๋ก ๋งค๋ ฅ์ฒ๋ผ ์๋ํฉ๋๋ค.wink:
{
"type": "node",
"request": "attach",
"name": "Attach",
"port": 9230,
"sourceMapPathOverrides": {
"webpack:///*": "${workspaceRoot}/*"
}
}
@ourmaninamsterdam RS๋ ์ ๋๋ฒ๊ทธ ํฌํธ(9230 + 1)์์ ์๋ฒ๋ฅผ ๋ค์ ์์ํ๋ฏ๋ก ์์ ๊ตฌ์ฑ์์ ์ฐ๊ฒฐ ํฌํธ๋ฅผ ๋ณ๊ฒฝํด์ผ ํฉ๋๋ค. ๋๋ ๋ ์ด์ ์กฐ์ฌํ์ง ์์๋ค : ์ค๋ง :
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๋ค๋ฅธ ์์ค ๋งต ์ค์ ์ ์ฌ์ฉํ์ฌ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋๋ฐ VSCode๊ฐ
cheap-module-sourcemap
๋ฅผ ์ข์ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค.razzle.config.js
:launch.json
:yarn start --inspect --inspect-port 9230
๋ก ์๋ฒ๋ฅผ ์์ํฉ๋๋ค.*์์ ๋จ, ์ค๋ฅ๋ฅผ ์ก์์ค @dguyonvarch ์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.