webpack使用 browser-sync 之后整页刷新而不是局部刷新?

我根据网上搜到的配置方式,在项目中配置了browser-sync,虽然一切都运行正常,但是发现并没有热加载局部的改变,而是整一页一起刷新了,感觉体验很不好

搜了几个方法说在入口文件加上if (module.hot) { module.hot.accept(); } 但是我试了下在main.js中加这句话并没有用。。不知道是不是加错地方了

附一下配置的代码:

let BrowserSyncPlugin = require('browser-sync-webpack-plugin');
new BrowserSyncPlugin(
    Object.assign({
        host: 'localhost',
        port: 3000,
        proxy: 'app.dev',
        files: [
            'app/**/*.php',
            'resources/views/**/*.php',
            'public/js/**/*.js',
            'public/css/**/*.css'
        ],
        snippetOptions: {
           rule: {
               match: /(<\/body>|<\/pre>)/i,
               fn: function (snippet, match) {
                   return snippet + match;
               }
           }
        }
    }, Config.browserSync),
    { reload: false }
)

项目用的是laravel + vue,所以这个配置文件是laravel-mix自带的配置文件,我截取了相关的配置代码贴上来的

阅读 3.6k
1 个回答

都是整体刷新,

你可以试试 webpack-dev-server 也是整体刷新,但是感觉比 browser-sync 好

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题