web-dev-qa-db-ja.com

ノードインスペクターを使用してbabelJS変換済みコードをデバッグする方法

node-inspectorを使用してnodeJSアプリをデバッグしようとしていますbabel-node

babel-node index.js --debug

ノードインスペクターは機能しますが、ソースマップはes6ではなく、変換されたes5に表示されます

enter image description here

19
cuadraman

トランスパイルされたコードではなく、ソースコードへのソースマップを作成するラッパーが必要です。

https://babeljs.io/docs/setup/#babel_node_debug から

npm install -g babel-node-debug
babel-node-debug index.js

更新

babel-nodeで実行する代わりに、es5 + sourcemapsにトランスパイルしてから、nodeで実行します。そうすることで、node-inspectorはソース開発ツールで適切なコードを表示します。

babel-nodeでそれを行う方法がわかりません

3
cuadraman

バベル6には、requireフックを使用しました。

以下の手順に従って、Babel Registerを取得してください。 https://babeljs.io/docs/setup/#babel_register

App.jsまたはアプリケーションへのエントリポイントに追加

require('babel-register')({
  sourceMaps: true
});

他のオプションも追加する必要がある場合は、- https://babeljs.io/docs/usage/options/#options を参照してください

アプリケーションをデバッグするには、node-inspector&chromeを使用できるはずです。

4
Sushant Rao

JavascriptのTaoによれば、「コードは瞬時に流れるため、知識はストリームのマップのようなヒントにすぎません。」

最新バージョンのv8では、次のようなコマンドが使用されます。

$ babel-node --inspect --debug-brk a.js

ソースマップの場合、これをa.jsに追加してみてください。

import 'source-map-support/register';
1
Charles Merriam