4

在 laravel 5.4 mix 和 browserSync 是默认的。如果我修改任何*.blade.php来自resources/views. 在我的webpack.mix.js我有这个配置:

const { mix } = require('laravel-mix');

mix
    .js('resources/assets/js/app.js', 'public/js')
    .sass('resources/assets/sass/app.scss', 'public/css')
    .browserSync({
        proxy:'localhost',
        port:8000,
        files: {
            match: [
                "resources/views/**/*.blade.php",
                "public/css/*.css",
                "public/js/*.js",
            ],
            fn: function (event, file) {
                /** Custom event handler **/
            },
            options: {
                ignored: [
                    '*.txt',
                    '*.json'
                ]
            }
        },
        logPrefix:'L54',
    });

我不知道我是否做得对,或者我必须设置混合配置左右。任何帮助将非常感激。

4

3 回答 3

4

只是对于任何仍然想知道的人,这似乎适用于 Laravel 5.5(开发分支):

mix.browserSync({
    proxy: 'https://www.site.example',
    files: [
        './resources/views/**/*.blade.php',
    ]
})
于 2017-08-20T17:42:50.233 回答
2

但是重新加载的资产/public好吗?

无论如何,我认为您不需要指定要观看的文件,因为这些是默认文件。我的配置只是

mix.browserSync({
  proxy: 'theapp.dev'
});

但是,如果您确实需要更改配置的那部分(用于自定义回调),则该files选项应该是一个数组(同时接受字符串和对象):

browserSync({
  files: [                           // 'files' array
    "wp-content/themes/**/*.css",      // 1st element
    {                                  // 2nd element
      match: ["wp-content/themes/**/*.php"],
      fn:    function (event, file) {
            /** Custom event handler **/
      }
    }                                  // end 2nd element
  ]                                  // end 'files' array
});
于 2017-05-16T13:20:22.360 回答
0

我发现观看我在 Laravel 中所做的一切的最佳设置:

mix.browserSync({
    proxy: 'https://www.site.example',
    files: [
        './app/**/*',
        './routes/**/*',
        './public/css/*.css',
        './public/js/*.js',
        './resources/views/**/*.blade.php',
        './resources/lang/**/*',
    ]
})
于 2020-10-12T08:06:36.687 回答