Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Webpack hmr net::ERR_INCOMPLETE_CHUNKED_ENCODING

When it loads everything is ok and hmr is working. Then this error is appearing.

GET http://localhost:3000/__webpack_hmr net::ERR_INCOMPLETE_CHUNKED_ENCODING

It's like the webpackdevserver is kinda crashing then relaunch, it takes few seconds then the hmr is working again

[HMR] connected

an then 'crash' and so on ...

It seems I have this issue only in Chrome (version 55) (tested with mozilla and this problem doesn't appear).

I may have missed something in my webpack or node conf but can't find something in the doc.

Any idea how to fix this ?

//BELOW THE webpack conf

const path = require('path');
const merge = require('webpack-merge');
const TARGET = process.env.NODE_ENV;
process.env.BABEL_ENV = TARGET;
const webpack = require('webpack');
const NpmInstallPlugin = require('npm-install-webpack-plugin');

const PATHS =  {
    app: path.join(__dirname, 'client'),
    build: path.join(__dirname, 'build')
};

const common = {
    entry: {
        app: [PATHS.app, 'webpack-hot-middleware/client']
    },

    resolve: {
        extensions: ['', '.js', '.jsx']
    },

    output: {
        path: PATHS.build,
        filename: 'bundle.js',
        publicPath: '/'
    },
    module: {
        loaders: [
            {
                test: /\.css$/,
                loaders: ['style', 'css'],
                include: PATHS.app
            },
            { 
                test: /\.jsx?$/,
                loaders:['babel?cacheDirectory=true'],
                include: PATHS.app
            }
        ]   
    }
};

if(TARGET === 'dev' || ! TARGET) {
    module.exports = merge(common, {
        // devServer: {
        //  contentBase: PATHS.build,
        //  historyApiFallback: true,
        //  hot: true,
        //  inline: true,
        //  progress: true,
        //  stats: 'error-only',
        //  host: 'http://127.0.0.1/',
        //  port: 3000
        // },
        export: {
            isDev: true
        },
        plugins: [
            new webpack.optimize.OccurrenceOrderPlugin(),
            new webpack.HotModuleReplacementPlugin(),
            new webpack.DefinePlugin({
              'process.env.NODE_ENV': JSON.stringify('dev')
            }),
            new NpmInstallPlugin({
                save: true
            })
        ],
        devtool: 'eval-source-map'
    });
}

if(TARGET === "build") {
    module.exports = merge(common, {});
}

// Nodejs route

this.app.get('/', function(req,res) {
            res.sendFile(path.join(__dirname, './../../build/index.html'))
        })

// index.html

<!DOCTYPE html>
<html>
    <head>
        <title> Ripple Data Analyzer</title>
    </head>
    <body>
        <div id='root'>
        </div>
        <script src="bundle.js"></script>
    </body>
</html>

//index.js

import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/App.jsx';

ReactDOM.render(<App/>, document.getElementById('root'));
like image 640
François Richard Avatar asked Jan 10 '17 22:01

François Richard


3 Answers

the real reason was that I put a setTimeout on my node server

server.timeout = 100;
like image 147
François Richard Avatar answered Oct 03 '22 04:10

François Richard


I suggest you to update node.js to latest LTS version, because this is node bug that was fixed in version 8.1.0 (not sure about version)

sudo s 8.9.1 (for linux)

like image 22
wwwebman Avatar answered Oct 03 '22 04:10

wwwebman


Guy, I suggest you update your node version, this is a problem with node link , but to solve your problem easily, follow this steps: node -v sudo npm cache clean -f sudo npm i n -g sudo n stable node -v See you ;)

like image 22
rflmyk Avatar answered Oct 02 '22 04:10

rflmyk