无法让Webpack HMR正常工作

时间:2017-04-25 17:46:50

标签: javascript node.js webpack webpack-dev-server webpack-hmr

我在我的项目中使用Webpack实现热模块替换,它使用Node(v4.4.4)/ Hapi(v8.0.0)作为服务器。我认为可以让它工作的方式是在我的服务器文件中使用插件,如下所示:

`var compiler = new require('webpack')(webpackConfig.default);
 var assets = { noInfo: false, publicPath: webpackConfig.default.output.publicPath };
 var hot = { reload: true, noInfo: true };`

server.register({
    register: require('hapi-webpack-plugin'),
    options: {
      compiler, assets, hot
    }
  },function(error) {
    if (error) {
      return console.error(error);
    }

    server.start(function() {
      if (process.env.CONFIG_WINSTON === 'on') {
        logger.info('Hapi', server.version, server.info.uri);
      } else {
        console.log('Hapi', server.version, server.info.uri);
      }
    });
  });`

在我的webpack.config.js中,我使用我的条目:

entry: [ 'webpack-hot-middleware/client?http://localhost:8080&reload=true', './webpack_common/src/scripts/main.js', ],

我还在webpack.config.js中添加了这个插件:

new webpack.HotModuleReplacementPlugin(),

最后我已经安装了软件包:

"webpack": "^2.2.1", "webpack-dev-middleware": "^1.10.1", "webpack-dev-server": "^2.4.4", "webpack-hot-middleware": "^2.17.1", "hapi-webpack-plugin": "^2.0.0",

通过所有这些设置,我可以使用Sass使我的HMR正常工作,这意味着它正在重建和更新我的浏览器。但是,当我更改任何javascript时,我会看到日志消息说一切顺利(捆绑包已重建),

`

[HMR] bundle rebuilding client.js?4b20:207 
[HMR] bundle rebuilt in 11952ms process-update.js:27 
[HMR] Checking for updates on the server... process-update.js:100 
[HMR] Updated modules:
A list of updated modules comes here...

[HMR] App is up to date.`

但我在浏览器中看不到任何更新。如果我手动刷新浏览器,则更新显示正常。我测试了Chrome,Firefox和Safari,但它们似乎都没有用。我在foruns中搜索了许多其他问题,但没有运气。 任何人都对我可能需要做的事情有任何线索?

0 个答案:

没有答案