Gulp 浏览器同步代理

Gulp browser-sync proxy

我正在尝试设置浏览器同步以通过代理工作:

gulp.task('browser-sync', function() {
    browserSync({
        notify: false,
        browser: "chrome",
        proxy:{
            host:"localhost"
        }
    });
});

问题是它似乎不能直接使用代理,而是请求手动将代码段放入网站。

但是,如果我尝试使用全局浏览器同步 browser-sync start --proxy "localhost",它会起作用。

如何让 gulp 浏览器同步的代理工作?或者,如何让全局浏览器同步与 gulp 一起使用?这很重要,这样浏览器同步就可以与我的 gulp 逻辑一起工作,并在需要时重新加载浏览器。

您的 json 选项格式有误。代理字段没有嵌套属性。试试这个:

browserSync({
        notify: false,
        browser: "chrome",
        proxy: "localhost"
    });

根据 to the docs,您应该使用 target 而不是 host

proxy: {
    target: "http://yourlocal.dev"
}

或者干脆

proxy: "local.dev"

就像@niba 在他的回答中所做的那样