ツール:Chrome開発者ツール、ReactJs、およびWebpack
多分、webpackのバンドルに切り替えたときだったかもしれませんが、最初にプロジェクトを始めたとき、jsをbundle.jsファイルにバンドルできましたが、ブラウザデバッグツールのファイルにアクセスできました。これで、ブラウザーのjsフォルダーに表示されるのはbundle.jsです
Webpackを使用して、ブレークポイントを挿入するようなことをできるように、ブラウザデバッガですべてのJavascriptファイルを表示できるようにするにはどうすればよいですか?
大量の印刷ステートメントを無意味に使用して久しぶりに、ようやく戻ってこれを行う方法を見つけました。
これは、バンドル後にブレークポイントを再び使用できるようにする方法です:
1)
Webpack.config.jsファイルに移動し、devtoolsを「true」から「source-map」または@MichelleTilleyが回答で説明した他のオプションのいずれかに設定します。
webpack.config.js(ここに例があります)
module.exports = {
entry: "./js/app.js",
output: {
filename: "js/bundle.js"
},
debug: true,
devtool: "#eval-source-map",
module: {
loaders: [
{
test: /\.jsx?$/,
exclude: /(node_modules|bower_components)/,
loader: 'babel'
}
]
}
};
2)
また、@ MichelleTilleyが答えで説明したように、Chromeでdevtoolsオプションを有効にする必要があるかもしれません。
3)
この後、デバッグに行くときは、「。」という名前の新しいフォルダを探す必要があります。それは気づきにくいです!
下のStackoverflowの回答のおかげで、そのフォルダーがどこにあるかがついにわかりました。
devtool
オプション を使用して、webpackにソースマップを生成させることができます( Chrome devtoolsオプションで有効にした場合 )は、Chromeがbundle.js
のコード(縮小される場合もあります)を元のソースコードに変換することを許可します。
開発では、このオプションをeval-source-map
またはcheap-eval-source-map
に設定し、本番環境ではこれをオフにするか、source-map
を使用して個別のソースマップファイルを生成します。
更新されたため、module.exportsの上部にmode: "development"を追加し、.jsファイル内で動作する任意の場所にデバッガーを設定して、chrome devtools
webpack.config.js:
const path = require('path')
module.exports = {
mode: 'development',
entry: path.join(__dirname,'src/js','index.js'),
output: {
path: path.join(__dirname, 'dist'),
filename: 'build.js'
},
module: {}
}