web-dev-qa-db-ja.com

ノードの組み込みデバッガーを使用して変数を検査しますか?

ノードデバッガーを使用しようとしています。 node debug serverサーバーを実行します。で、〜がある:

...
var Workspace = mongoose.model('Workspace');
debugger;

この時点で、予想どおり、このコードを実行すると、デバッガーがポップアップ表示されます。ただし、Chromeのデバッガーで発生するように、現在の変数がすべて設定されていると予想されます。

だが:

break in hotplate/node_modules/bd/lib/bd.js:133
132 
133   debugger;
134 
135   // Delete the ID and the version since there's no point,
debug> Workspace
ReferenceError: Workspace is not defined

だから...どうすれば実際に現在の変数を調べることができますか?

ボーナス質問:Chromeの開発者ツール(CTRL-J)を使用してノードに接続し、そのように機能する方法はありますか? (ノードインスペクターは知っていますが、非常に時代遅れで...)

47
Merc

ボーナスの質問に対する答えは2018年に変更されました。

_node inspect foo.js_を実行します。

_chrome://inspect_にアクセスすると、デバイスのリストにTarget (<process.version>)というエントリと検査リンクが表示されます。

次のようになります。 enter image description here

3
Andy Gaskell

replコマンドを使用します( docs の3番目の例を参照)

break in hotplate/node_modules/bd/lib/bd.js:133
132 
133   debugger;
134 
135   // Delete the ID and the version since there's no point,
debug> repl
Press Ctrl + C to leave debug repl
> Workspace

更新:ボーナス質問- https://github.com/c4milo/node-webkit-agent

77
Andrey Sidorov