現在、次のスクリプトを使用してnodejsアプリケーションを起動しています。私はその後、それにvscodeのデバッガをアタッチこれは動作します:
"dev": "NODE_PATH=\"$(pwd)\" NODE_ENV=development nodemon -r babel-register -r babel-polyfill --nolazy --debug-brk=36598 ./src/index.js"
私はしかしvscodeに作り付けの「起動」オプションを使用したいと思います。
設定の下のlaunch.jsonには、envというフィールドがあります。私は現在のディレクトリに値を設定するNODE_PATHを追加したいと思います。ここ
{
"name": "Launch",
"type": "node",
"request": "launch",
"program": "${workspaceRoot}/src/index.js",
"stopOnEntry": false,
"args": [],
"cwd": "${workspaceRoot}",
"preLaunchTask": null,
"runtimeExecutable": null,
"runtimeArgs": [
"-r",
"babel-register",
"-r",
"babel-polyfill",
"--nolazy"
],
"env": {
"NODE_ENV": "development",
"NODE_PATH": "$(pwd)" // <--- here
},
"console": "internalConsole",
"sourceMaps": false,
"outDir": null
}
問題は、変数がなく、実際にコマンドとして実行し、出力を保存する「$(PWD)」に設定されていることです。
私は自分のコードに次き:
console.log(process.env.NODE_PATH);
それは、(代わりに現在のディレクトリパスの)次を出力します
$(pwd) // <--- wrong, I was expecting '/home/karl/dev/my_project'
私はruntimeArgsとargsでを設定するが、試してみましたそれはどちらもうまくいかない。
アイデア?