Webpack不断编译节点模块
我目前正在从webpackWebpack不断编译节点模块,webpack,webpack-2,Webpack,Webpack 2,我目前正在从webpackv1.13.2过渡到2.6.1,并且我遵循了Migr文档,但由于某些原因,我找不到webpack继续编译节点模块(而我已排除了文件夹) 我希望能得到一些帮助,因为目前它的错误和非常缓慢(40秒)的构建时间(以前平均为4.8秒)让我痛苦不已。此外,数据包大小也从4.1mb增加到了10.1mb 文件夹结构 const path = require('path'); module.exports = { devtool: 'cheap-eval-source-map
v1.13.2
过渡到2.6.1
,并且我遵循了Migr文档,但由于某些原因,我找不到webpack继续编译节点模块(而我已排除了文件夹)
我希望能得到一些帮助,因为目前它的错误和非常缓慢(40秒)的构建时间(以前平均为4.8秒)让我痛苦不已。此外,数据包大小也从4.1mb增加到了10.1mb
文件夹结构
const path = require('path');
module.exports = {
devtool: 'cheap-eval-source-map',
context: path.resolve(__dirname, 'app', 'js'),
entry: {
bundle: 'index.js'
},
resolve: {
modules: [
path.join('app', 'js'),
'node_modules'
]
},
output: {
path: path.join(__dirname, 'build', 'js'),
filename: 'react.js',
sourceMapFilename: 'react.js.map'
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: [
'/(node_modules)/',
'/(bower_components)/'
],
loader: 'babel-loader',
options: {
presets: [
'babel-preset-react',
'babel-preset-es2015',
'babel-preset-stage-0'
]
}
}
]
}
};
- 节点单元
- webpack.config.js
- 应用程序(又名src)
- 建造(又名区)
- 出口
webpack.config.js
文件
const path = require('path');
module.exports = {
devtool: 'cheap-eval-source-map',
context: path.resolve(__dirname, 'app', 'js'),
entry: {
bundle: 'index.js'
},
resolve: {
modules: [
path.join('app', 'js'),
'node_modules'
]
},
output: {
path: path.join(__dirname, 'build', 'js'),
filename: 'react.js',
sourceMapFilename: 'react.js.map'
},
module: {
rules: [
{
test: /\.jsx?$/,
exclude: [
'/(node_modules)/',
'/(bower_components)/'
],
loader: 'babel-loader',
options: {
presets: [
'babel-preset-react',
'babel-preset-es2015',
'babel-preset-stage-0'
]
}
}
]
}
};
错误示例(您可以看到它来自编译react dropzone
)
更新1
在实现了正确的规则.exclude
之后,由于@AndrewLi,构建时间下降到了15秒左右,但是构建大小保持不变,我仍然可以看到不应该在那里的东西。请参见下面的屏幕截图。
更新2
我在比较
devtool:“eval”
和devtoo:“廉价eval源代码映射”
。因此,实际上构建大小已经恢复正常。唯一保持不变的是构建速度,与webpackv1.13.2
的5秒相比,仍然有超过15秒的构建速度,但是一个更整洁的配置会声明一个直接的规则。包括路径而不是一组规则。排除@toomuchdesign这是有人建议删除他/她的答案,所以现在在我的配置中是这样:)无论如何,谢谢!