我正在使用babel,并且遇到了一些错误,因此我想使用chrome devtools进行调试。但是,当我尝试这样做时,在“源”面板中,我只获得了两个使用了eval的最小化文件application.js
和vendor.bundle.js
。
这是他们看起来的样子:
webpackJsonp([0],[
/* 0 */,
/* 1 */
/***/ function(module, exports, __webpack_require__) {
eval("/* WEBPACK VAR INJECTION */(function(module) {//! moment.js\n//! version : 2.17.1\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n;(function (global, ....
/***/ },
/* 2 */
/***/ function(module, exports) {
"use strict";
eval("\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a functio...
/***/ },...
所以我无法调试。这是我的基础配置:
// Common Webpack configuration used by webpack.config.development and webpack.config.production
const path = require('path');
const webpack = require('webpack');
const autoprefixer = require('autoprefixer');
module.exports = {
output: {
filename: 'js/[name].js',
path: path.resolve(__dirname, '../build/client'),
publicPath: '/'
},
resolve: {
modules: [
path.join(__dirname, '../src/client/scripts'),
path.join(__dirname, '../src/client/assets'),
path.join(__dirname, '../src/client/assets/javascripts'),
'node_modules'
],
alias: {
models: path.join(__dirname, '../src/client/assets/javascripts/models')
},
extensions: ['.js', '.jsx', '.json', '.scss']
},
plugins: [
new webpack.ProvidePlugin({
'fetch': 'imports?this=>global!exports?global.fetch!whatwg-fetch' // fetch API
}),
// Shared code
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
filename: 'js/vendor.bundle.js',
minChunks: Infinity
}),
// ["import", { libraryName: "antd", style: "css" }]
],
module: {
loaders: [
// JavaScript / ES6
{
test: /\.jsx?$/,
include: path.resolve(__dirname, '../src/client/assets/javascripts'),
loader: 'babel'
},
{...},
// Fonts
{...}
]
},
postcss: function () {...}
};
我的开发配置:
const merge = require('webpack-merge');
const webpack = require('webpack');
const config = require('./webpack.config.base');
const path = require('path');
const GLOBALS = {
'process.env': {
'NODE_ENV': JSON.stringify('development')
},
__DEV__: JSON.stringify(JSON.parse(process.env.DEBUG || 'true'))
};
module.exports = merge(config, {
debug: true,
cache: true,
devtool: 'cheap-module-eval-source-map',
entry: {
application: [
'webpack-hot-middleware/client',
'react-hot-loader/patch',
'development'
],
vendor: ['react', 'react-dom', 'react-redux', 'react-router', 'react-router-redux', 'redux']
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.DefinePlugin(GLOBALS)
],
module: {
loaders: [
// Sass, CSS
{...}, {...}
]
}
});