Wow! You guys! Setting the standard for a great response.
OK, we are halfway there. I cloned the original app to my Linux host to compare behavior. When I make a change on Linux, I get these messages in my server console:
webpack: Compiling...
Child html-webpack-plugin for "index.html":
webpack: Compiled successfully.
And then I get this in my browser console:
[HMR] Updated modules:
(unknown) [HMR] - 410
(unknown) [HMR] - 417
(unknown) [HMR] - 414
(unknown) [HMR] - 164
(unknown) [HMR] App is up to date.
HMR = Hot Module Reload
Now in the gomix
console I get (time stamps removed)
webpack: Compiling...
webpack: wait until bundle finished:
Child e[1mhtml-webpack-plugin for "index.html"e[22m:
webpack: Compiled successfully.
So almost the same, but not quite, because it does not hot reload, and after a delay it does a full page reload (boo!)
The browser console gives a clue (which I don’t quite know how to interpret).
It’s a series of messages like this:
abstract-xhr.js?96d9:132 GET https://localhost:3000/sockjs-node/info?t=1487187515003
net::ERR_CONNECTION_CLOSED
About as many as the HMR messages in the reference version
Each message has a stack trace, which I can supply.
The “https://localhost:3000” comes from the webpack.config.js
file, which says:
module.exports = {
devtool: 'eval-source-map',
entry: [
'webpack-dev-server/client?http://localhost:3000',
'webpack/hot/only-dev-server',
'react-hot-loader/patch',
path.join(__dirname, 'app/index.js')
],
I changed watch.json
to restart the server when webpack.config.js
changed.
Then I changed http://localhost:3000
to other things that I thought might work Like https://localhost:3000
and http://localhost
and http://0.0.0.0?http://localhost:3000
and ‘https://tight-timpani.gomix.me/’ all to no avail.
Changing http
to https
did nothing.
Dropping the port just dropped the port on the error message.
And changing the host to anything but localhost resulted in no diagnostic, just a reload.
So at this point I am out of ideas. It seems like a WebSocket connection is getting set up, but then gives an error when the app tries to use it.