1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

vscodeでNext.js/ReactのTypeScript/JavaScriptをデバックする

Last updated at Posted at 2025-12-28

vscodeでTypeScript/JavaScriptをデバックする

Next.js/Reactで、TypeScript/JavaScriptをデバックする方法
vscode自体はJavaScriptのデバック機能を持っているので、Next.js/Reactで、そのでデバック機能を使う方法を紹介します

設定ファイルを作る

${projectRoot}/.vscode/launch.json を作る(例)

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Next.js: debug server",
      "type": "pwa-node",
      "request": "launch",
      "runtimeExecutable": "npm",
      "runtimeArgs": ["run", "dev"],
      "cwd": "${workspaceFolder}",
      "console": "integratedTerminal",
      "env": { "NODE_OPTIONS": "--inspect" }
    },
    {
      "name": "Next.js: debug client (Chrome)",
      "type": "pwa-chrome",
      "request": "launch",
      "url": "http://localhost:3000",
      "webRoot": "${workspaceFolder}",
      "sourceMapPathOverrides": {
        "webpack:///./*": "${webRoot}/*",
        "webpack://_N_E/*": "${webRoot}/*",
        "webpack:///*": "*"
      }
    },
    {
      "name": "Next.js: debug client (Edge)",
      "type": "pwa-msedge",
      "request": "launch",
      "url": "http://localhost:3000",
      "webRoot": "${workspaceFolder}",
      "sourceMapPathOverrides": {
        "webpack:///./*": "${webRoot}/*",
        "webpack://_N_E/*": "${webRoot}/*",
        "webpack:///*": "*"
      }
    }
  ],
  "compounds": [
    {
      "name": "Next.js: full-stack (Chrome)",
      "configurations": [
        "Next.js: debug server",
        "Next.js: debug client (Chrome)"
      ]
    },
    {
      "name": "Next.js: full-stack (Edge)",
      "configurations": [
        "Next.js: debug server",
        "Next.js: debug client (Edge)"
      ]
    }
  ]
}

このlaunch.jsonの書き方はvscode公式のVisual Studio Code debug configurationを参照

vscodeの実行とデバックを開く

image.png
実行とデバックのウィンドウの上に表示が現れる
image.png
v をクリックして開くとわかるが、一覧に表示されるのは launch.json の name: と一致している
image.png

  • debug server:サーバ(node.js)だけ起動
  • debug client (Chrome):クライアント、chromeだけ起動
  • debug client (Edge):クライアント、Edgeだけ起動
  • full-stack (Chrome):サーバとchromeが起動
  • full-stack (Edge):サーバとEdgeが起動

上記のいずれかを選択して緑の▶ボタンをクリック
通常はchromeを使っているので「full-stack (Chrome)」を選んでいる。node.jsとchromeが同時に起動する

ブラウザは全くの新しいインスタンスで素の状態(キャッシュはクリアされてゼロ、拡張も全く無い)で起動する
image.png

キャッシュは毎回クリアされているのは有難いが、拡張が全くないのは困った
React/ext.jsで開発しているのだが、React developper toolが無い状態で毎回起動される

React developper tool等の拡張が必要な場合は別途Windowsのスタートメニューからブラウザを起動してURLを開くか、毎回拡張をインストールする必要がある(ちと、面倒)

あとは、breakPointを設定し、ステップ実行、変数の中身を見る等の操作方法は、vscodeのデバック機能を使ってやる

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?