私はかなりwebpackに慣れていないので、必要なソースマップを作成するためにWebpackを設定するのに苦労しています。開発ツールでは
ソースマップが検出されました
ただし、元のコードではなくバンドルが表示されます。
これが私のwebpack.config.jsです。
module.exports = {
entry: [
'webpack-dev-server/client?http://localhost:8080/',
'webpack/hot/dev-server',
"./src/index.js"
],
output: {
filename: 'bundle.js',
path: '/',
},
debug: true,
devtool: 'source-map',
resolve: {
extensions: ['', '.jsx', '.scss', '.js', '.json']
},
module: {
loaders: [
{
test: /(\.js|\.jsx)$/,
exclude: /node_modules/,
loaders: ['react-hot','babel']
},
{
test: /\.scss$/,
exclude: /node_modules/,
loaders: ["style", "css?sourceMap", "sass?sourceMap"]
}
]
},
devServer: { hot: true },
plugins: [ new webpack.HotModuleReplacementPlugin() ],
inline: true,
progress: true,
colors: true
};
そして、ここに私のpackage.jsonがあります:
{
"name": "react-template",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"dev:test": "./node_modules/.bin/webpack --config webpack.test.config.js",
"test:bundle": "./node_modules/.bin/tape test/bundle.js",
"dev:serve": "./node_modules/.bin/webpack-dev-server --config webpack.development.config.js"
},
"devDependencies": {
"babel-loader": "^6.2.1",
"babel-preset-es2015": "^6.3.13",
"babel-preset-react": "^6.3.13",
"babel-preset-stage-0": "^6.3.13",
"css-loader": "^0.23.1",
"node-sass": "^3.8.0",
"on-build-webpack": "^0.1.0",
"react": "^0.14.6",
"react-dom": "^0.14.6",
"react-hot-loader": "^1.3.0",
"sass-loader": "^3.2.1",
"style-loader": "^0.13.0",
"tape": "^4.4.0",
"webpack": "^1.12.12",
"webpack-dev-server": "^1.14.1"
}
}
devtool
オプションの複数のバリエーションを試し、 this 、 this 、および this を読み取りましたが、運はありません。
どんな助けも素晴らしいでしょう!
Webpack.config.jsファイルに以下を追加してください `
devtool: "#inline-source-map"、
Webpackのサイトからそれに関する明確な情報を見つけることができます ` https://webpack.github.io/docs/configuration.html
また、webpackサイトからsourcemapパーツの添付スクリーンショットを見つけてください。
--mode development
npm
ビルドスクリプトで、
{
"name": "test",
"version": "1.0.1",
"description": "",
"scripts": {
"build": "webpack",
"start": "webpack-dev-server --mode development --open"
"test": "echo \"Error: no test specified\" && exit 1",
},
"author": "",
"license": "",
"devDependencies": {
"babel-core": "^6.26.3",
"babel-loader": "^7.1.5",
"babel-preset-env": "^1.7.0",
"webpack": "^4.19.1",
"webpack-cli": "^3.1.0",
"webpack-dev-server": "^3.1.8"
},
"dependencies": {}
}
webpack.config.js
const path = require('path');
var webpack = require('webpack');
module.exports = {
entry: './src/web.js',
devtool: 'inline-source-map',
output: {
filename: 'main.js',
path: path.resolve(__dirname, 'dist')
},
mode: 'development',
module: {
rules: [{
test: /\.js$/,
exclude: /(node_modules)/,
use: {
loader: "babel-loader",
options: {
presets: ["babel-preset-env"]
}
}
}]
},
devServer: {
inline: true,
contentBase: path.join(__dirname, 'dist'),
compress: true,
port: 9000,
watchOptions: {
index: 'index.html',
open: true,
poll: true,
watchContentBase: true
}
},
watch: true,
watchOptions: {
aggregateTimeout: 500,
ignored: /node_modules/,
poll: 3000
}
}