Gulp 浏览器同步 ENOENT 错误

Gulp browser-sync ENOENT error

运行 gulp 服务,导致如下错误:

[BS] [debug] Getting option: socket.path
[BS] [debug] Getting option: socket.namespace

events.js:72
        throw er; // Unhandled 'error' event
          ^
Error: spawn ENOENT
    at errnoException (child_process.js:1001:11)
    at Process.ChildProcess._handle.onexit (child_process.js:792:34)

它仅在 运行 浏览器同步时出现,这是我的浏览器同步配置:

browserSync({
    notify: false,
    server: {
        baseDir: ['app']
    },
    watchOptions: {
        debounceDelay: 250
    },
    startPath: "/" + view + ".html",
    injectChanges: true,
    logLevel: "debug",
    browser: ["google chrome"] 
});

我是运行以下版本:

节点:0.10.33 gulp:3.8.10 浏览器同步:1.8.2(也试过 1.9.x)

启动路径正确且存在,禁用 ghostMode 无济于事。

你试过吗?

browserSync({browser: ['chrome']});

试试这个:浏览器:'google-chrome'

浏览器:'google-chrome' - 是正确的配置。 当您配置 BrowerSync 时,请使用带短划线的 'google-chrome' 而不是 'google chrome' 或 'chrome'。所以你的配置应该是这样的:

browserSync({ 
  notify: false, 
  server: { baseDir: ['app'] }, 
  watchOptions: { debounceDelay: 250 }, 
  startPath: "/" + view + ".html", 
  injectChanges: true, 
  logLevel: "debug", 
  browser: "google-chrome" 
});

我发现 this comment 提供了最好的选择:

browser: process.platform === 'darwin' ? 'MAC_OS_X_SPECIFIC_BROWSER' : 'OTHER'