ブレークポイントをサポートしていないことを確認するために、node-inspectorをインストールしました:| 大部分のノードコードは非同期であり、ステップバイステップで実行することはできないことを念頭に置いて、そのポイントは何ですか?..
私は間違いなくここでポイントを逃しています...
とにかく、ブレークポイントとすべてを使用してノードコードをデバッグしますか?
ブレークポイントをサポートしていないことを確認するために、node-inspectorをインストールしました:| 大部分のノードコードは非同期であり、ステップバイステップで実行することはできないことを念頭に置いて、そのポイントは何ですか?..
私は間違いなくここでポイントを逃しています...
とにかく、ブレークポイントとすべてを使用してノードコードをデバッグしますか?
yupp、node-inspectorを正常に使用しました。永続的なブレークポイントが必要な場合debugger;
は、コードに挿入するだけです。http://nodejs.org/api/debugger.htmlを参照してください。
node --inspect-brk script.js
(以前は)を使用して、デバッガーが接続されるまでノードを待機さnode --debug-brk script.js
せることも非常に役立ちます。
(ノード8以降の場合)
Node.jsにはデバッガーが組み込まれています。通常、デバッガーをオンにするには次の2つの方法があります。
--inspect
または--inspect-brk
スイッチを使用してNode.jsアプリまたはスクリプトを起動します。例えば:
$ node.js --inspect index.js
(注:--inspect-brk
ユーザーコードが開始する前に中断します)
何らかの理由で--inspect
スイッチを使用してNode.jsアプリまたはスクリプトを起動できない場合でも、SIGUSR1(LinuxおよびOS X)でシグナルを送信することにより、Node.jsプロセスにデバッグメッセージのリッスンを開始するように指示できます。ノード8以降では、-inspectスイッチと同じようにInspectorAPIがアクティブになります。
$ kill -sigusr1 23485
(注:23485を独自のNode.jsプロセスIDに置き換える必要があります)
デバッガーをオンにした状態で、Google Chromeブラウザーを開き、アドレスバーに入力できますchrome://inspect
次に、「リモートターゲット」の下にリストされたエントリが表示されます。先に進み、「検査」をクリックします。
これで、ブレークポイントを設定してコードのデバッグを開始できます。
参照:
Node.jsアプリケーションをデバッグするには、デバッグの組み込みメソッドを使用できます。
(1)debugger;
ブレークポイントを挿入する場所にステートメントを挿入します。
(2)コマンドを使用してファイルを実行します。$ node inspect <file name>
(3)たとえば、キーを使用しc
て次のブレークポイントに進みます。
と入力することで、そのブレークポイントで変数に関連付けられた値をデバッグすることもできますrepl
。詳しくは公式ガイドをご覧ください。
nodemon
ライブラリを使ってみましたか?ここで見つけることができます。
開発目的で、nodemonを実行しているアプリを起動できます。私はこのスクリプトを持っています:
"dev": "nodemon --inspect src/index.js"
debugger
コード内でステートメントに到達するたびに中断します。サーバーコードが表示されているコンソールを開くには、Chromeでコンソールを開き、nodejsアイコンをクリックします。
また、サーバーにファイルを保存するたびにサーバーを更新するのにも役立ちます。
それがうまくいくかどうか私に知らせてください!
ここで少し詳しく説明します。
ブレークポイントを配置する場所にデバッガーを設定してから、ノードdebug script.js/index.jsを使用してコードを実行します。
デバッガーがブレークポイントで停止したら、変数を検査するためにreplを実行する必要があります。