LoginSignup
1
2

起動済みのNuxt3をVSCodeデバッグ

Posted at

条件

  • Docker使用
  • コンテナ起動でNuxt3のプロジェクトが起動

package.json

コンテナ起動時にnpm run devが実行されるかと思います。
この時に--inspectオプションを追加しておきます。

    "scripts": {
        "build": "nuxt build",
        "dev": "nuxt dev --inspect", //←←ここにオプション追加
        //略

これによりデバッグモードで実行されます。
ですがこれだけではブレークポイントを設定しても止まってくれません。

リモートエクスプローラーでVSCodeを開く

VSCodeでNuxt3の開発コンテナにリモートエクスプローラーで接続する

image.png

このアイコンから。

launch.json

{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "node debug",
			"request": "attach", // launchではなくattach
			"skipFiles": [
				"<node_internals>/**"
			],
			"type": "node"
		},
	]
}

デバッグ実行

image.png
このアイコンから実行。

先のlaunch.jsonでnode debugとnameに記述したので、node debugというのが出てくるからそれを選ぶ。

image.png

いざブレークポイント設定

ここまでやってブレークポイントを設定すれば止まってくれます。

個人的に詰まったところ

  • ホストマシン側にnodeを入れていないので、リモートエクスプローラで開かないといけなかった。
  • バックエンドとNuxt3を同じリポジトリで管理していて、Nuxt3のルートで開いておらず、launch.jsonの設置場所も違った。
  • デバッグポートを新たにdocker-compose.ymlとかに追記しないとできないのか、どうかがわからず検証してみた→必須ではなさそう。たぶん--inspectで起動するようにしたので、もともと解放していたポートを使ってデバッグできるっぽい。(ちなみにデフォルトのデバッグポートは9229らしい)
  • launch.jsonの書き方がそもそもわからなかった。

一応上記でvueコンポーネントもtsファイルもデバッグできました。

しかし、わざわざnpm run dev --inspectとしないといけないのかがひっかかり。

npm run devで起動しておいて後からデバッグモードにしするような記述方法がlaunch.jsonであるのかもしれないですが、わからず。(ご存知の方ご教授ください🙇‍♂️

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