Laravel-mix+browser-sync 配置问题,无法跟新.vue 文件的变化,大神看下配置有什么问题?

配置文件:

mix.browserSync({
        proxy: 'https://192.168.1.222:8082',
        files: [
            './resources/views/**/*.blade.php',
            './resources/assets/js/**/*.js',
            './resources/assets/js/**/*.vue',
        ]
})
.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css')
.js('resources/assets/js/home.js', 'public/js')
.sass('resources/assets/sass/home.scss', 'public/css')
.version()
;

描述

在我修改.vue 文件的时候,浏览器确实刷新了,但是内容并未更新,此时我再去改变任意一个js文件,之前对.vue文件的改变的内容才会更新显示到浏览器上,已经禁用缓存。

期望结果

在修改.vue文件后,浏览器刷新,并更新.vue文件上被修改的内容。

echoisles
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
jltxwesley
最佳答案

修改下你的 files 的配置:

files: [
    'public/css/app.css', 
    'public/js/app.js', //改成你自己的编译后的JS文件
    'resources/views/**/*.php'
]

所有的 Vue 文件会被 webpack 编译成 JS 文件,所以把 JS 改成 compile 完的版本试试,这样就不用监听Vue了。

7年前 评论
讨论数量: 4
jltxwesley

修改下你的 files 的配置:

files: [
    'public/css/app.css', 
    'public/js/app.js', //改成你自己的编译后的JS文件
    'resources/views/**/*.php'
]

所有的 Vue 文件会被 webpack 编译成 JS 文件,所以把 JS 改成 compile 完的版本试试,这样就不用监听Vue了。

7年前 评论
echoisles

@jltxwesley 这样还是不行,问题就出在vue的改动并未触发webpack重新编译,只是刷新浏览器了。outfile 当然也就不会发生改变。

7年前 评论
jltxwesley

@echoisles

原来是这样,一般只要webpack.mix.js配置正确,不会出现这样的问题。

7年前 评论

我的webpack倒是重新编译了,不过browsersync一直处于reloading状态,页面没有自动刷新

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!