6

I have some problems setting up a single page react app using react router with the webpackdevserver. If I use browserhistory webpack has some problems when entering a nested route url (/client/view for example). This could be solved adding apiFallback but hot reload does still have a problem. It tries to load the hot-update.json file from the deep url (/client/view/hot-update.json) which does not exist and therefor fails and reloads the page. How can i tell hotreload to always load the hot-update.json from the base url (/)?

Marc
  • 317
  • 4
  • 11

2 Answers2

1

I had a similar issue when using a publicPath other than '', which I solved by adding a proxy entry to the devServer options:

devServer: {
  // ... rest of options
  proxy: {
    '/myPublicPath/*': {
      target: 'http://localhost:8080/',
      pathRewrite: { '^/myPublicPath': '' },
  }
}

Other than that, make sure both output.publicPath and devServer.publicPath is set and equal.

Hope this helps!

Kris Selbekk
  • 7,438
  • 7
  • 46
  • 73
1

I had a similar issue. The dev server kept trying to load bundle.js from the directory relative to the url. My publicPath is '/', and, unfortunately, the other answer did not help. I solved the issue like this:

  devServer: {   
    // ... other options 
    historyApiFallback: {
      rewrites: [
        { from: /^.*\/bundle\.js$/, to: '/bundle.js' },
      ]
    }
  }
Bijou Trouvaille
  • 8,794
  • 4
  • 39
  • 42