Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webpack不断编译节点模块_Webpack_Webpack 2 - Fatal编程技术网

Webpack不断编译节点模块

Webpack不断编译节点模块,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

我目前正在从webpack
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源代码映射”
。因此,实际上构建大小已经恢复正常。唯一保持不变的是构建速度,与webpack
v1.13.2

5秒相比,仍然有超过15秒的构建速度,但是一个更整洁的配置会声明一个直接的
规则。包括
路径而不是一组
规则。排除
@toomuchdesign这是有人建议删除他/她的答案,所以现在在我的配置中是这样:)无论如何,谢谢!