如何手动触发webpack捆绑?

时间:2017-11-02 09:27:20

标签: webpack webpack-2 elm

我有一个中等大小的榆树应用程序。我的大部分更改都围绕着重构和其他:"nothing to show in the browser" - 更改。

在每次保存时,webpack进程再次启动。捆绑+浏览器刷新大约需要8-15秒。在此期间我的处理器达到100%编辑器冻结,我甚至无法滚动代码。 (3.7Gh i3处理器,4GB RAM)

进行小改动和保存时 - 这种等待是过度的。所以我尝试在保存前做很多改动。但保存很好,因为我得到了代码格式。

没有脚本webpack运行 - 编译榆树代码+代码格式化需要不到3秒,即使是非常大的重构。

当我不需要在浏览器中看到某些内容时,我正在弯曲webpack脚本,并且一旦我需要查看某些内容,我就会再次启动它。这个初始构建需要40到60秒 ..所以开始和弯曲它非常痛苦。

要解决这个问题,我想手动触发捆绑和浏览器刷新 - 按F5或其他东西。

仅在the compilation

上保留code formattingctrl + s / save内容

我并不完全理解saving-compilation-browser refresh在这里如何相互触发。我还有用于编译和代码格式化的编辑器包(atom) - 它们在没有运行webpack的情况下工作正常。

也许他们独立工作,webpack脚本因文件更改而启动。

但是如果这个假设是正确的 - 那么为什么我在webpack运行时得到我的dev-server控制台内的错误消息和编译消息? Webpack似乎独立进行代码编译..

关闭webpack.config.js内的观看模式,但它不起作用。 没有什么改变

这是我的配置:

module.exports = {
    watch: false,

    entry: entryPath,

    output: {
        filename: 'bundle.js',
        path: outputPath
    },

    module: {

        rules: [{
                test: /\.(eot|ttf|woff|woff2|svg)$/,
                loader: 'file-loader'
            },
            {
                test: /\.elm$/,
                exclude: [/elm-stuff/, /node_modules/],
                use: 
                    [ 'elm-hot-loader'
                    , 'elm-webpack-loader?verbose=true&warn=true&debug=true'
                    ]
            },
            {
                test: /\.css$/,
                use: extractCSS.extract(['css-loader', 'postcss-loader'])
            },
            {
                test: /\.(sass|scss)$/,
                use: extractSASS.extract(['css-loader', 'sass-loader'])
            },
            {
                test: /\.js$/,
                use: {
                    loader: 'babel-loader',
                    options: {
                        presets: ['env']
                    }
                }
            }

        ]
    },

    plugins: [
        new CleanWebpackPlugin(['dist']),
        new HtmlWebpackPlugin({
            template: 'index_.html',
            inject: 'body',
            filename: 'index.html'
        }),
        extractCSS,
        extractSASS
    ]
};

问题:如何通过按特定键(可能是F5)来触发此捆绑和浏览器刷新?并阻止其自动观看文件系统?

有更好的方法吗?

0 个答案:

没有答案