1

我在使用 HotModuleReplacement 时遇到了一些错误。我实际上不能使用它,它说__webpack_hmr找不到。

/node_modules/webpack-hot-middleware/client.js我默认情况下有这个配置:

/*eslint-env browser*/
/*global __resourceQuery __webpack_public_path__*/

var options = {
  path: "/__webpack_hmr",
  timeout: 20 * 1000,
  overlay: true,
  reload: false,
  log: true,
  warn: true
};

但是我的 basedir 下没有“__webpack_hmr”。它应该位于哪里,是一个文件?我很困惑,尝试使用 Brosersync、webpack、HMR。我只是在测试一些 React Admin Panel,我已经在 Github 上向作者询问过,但没有回应。请帮忙。

这是我的 webpack 配置的一部分:

entry: [
    './src/webpack-public-path',
    'webpack-hot-middleware/client?reload=true',
    './src/index'
  ],
  target: 'web',
  output: {
    path: `${__dirname}/src`,
    publicPath: '/',
    filename: 'bundle.js'
  },
plugins: [
    new webpack.DefinePlugin({
          'process.env.NODE_ENV': JSON.stringify('development'),
          __DEV__: true
        }),
new webpack.HotModuleReplacementPlugin(), etc...

Webpack hmr: __webpack_hmr 404 not found等一些主题提供了没有意义的解决方案,而且与我的情况不同。

我正在使用 Cluod9 IDE,所以我没有本地主机,我必须在某处手动定义主机。

4

1 回答 1

0

您可以通过从 webpack 配置中删除 'webpack-hot-middleware/client' 来解决此问题。

于 2021-02-19T20:24:53.110 回答