2014-01-17 10 views
9

次の問題があります.vmモジュールを使用して実行されるコードでブレークポイントをデバッグまたは設定しようとしています。私がこれを達成するために見つけた唯一の方法は、デバッガーステートメントを置くことです:node.jsのVMで実行されるデバッグコード

// client code, loaded in the vm module 
function printMessage() { 
    debugger; 
    return 56; 
} 

printMessage(); 

これを行う方法は他にありますか?好ましくは、ノードインスペクタなどのツールを使用しますか?

EDIT:解決策を見つけました。 "filename"の文字列をvmの実行関数に渡します。たとえば:正確にコードがどこから来たの

vm.runInThisContext(codeToRun, "someFilename.js");

このようデバッガは、「割り出し」。

答えて

1

あなたが言及したように、node-inspectorはこのタスクの良い候補です。 node-debug someFilename.jsを起動してブレークポイントをUIに直接設定することはできませんか?

別の方法は、あなたがノードのドキュメントでより多くの情報を見つけることができるとdebuggerを使用して、node debug someFilename.jsを実行し、setBreakpoint('someFilename.js', 10)

のようなコマンドを使用することです:https://nodejs.org/api/debugger.html

関連する問題