1

我安装了插件浏览器同步。在命令行粘贴gulp browser-sync并在 firefox 显示“ Cannot GET / ”地址http://localhost:3000/

gulpfile.js中有:

var gulp = require('gulp'),
    browserSync = require('browser-sync');

gulp.task('browser-sync', function () {
 var files = [
  'app/**/*.html',
 ];

 browserSync.init(files, {
  server: {
     baseDir: './app'
  }
 });
});

文件夹app放置在 Node.js 的根目录中。我不使用任何 LAMP 或 WAMP,因为我不能使用它。还有其他解决问题的方法吗?(更改源代码后在浏览器中重新加载页面)。

谢谢

4

1 回答 1

2

我相信这是因为浏览器同步不知道,如果没有额外的配置,当你没有指定要查看的显式文件时该怎么做。通常,当指定目录时,Web 服务器默认查看 index.html。

要查看是否是这种情况,请转到http://localhost:3000/index.html,假设您在 'app' 目录下直接有一个 index.html(例如 app/index.html 存在)。

要“修复”此问题,请将以下参数之一添加到服务器配置中:

  1. index: "index.html"(显示 index.html)
  2. directory: true(显示目录列表)

有关更多配置选项,请参阅http://www.browsersync.io/docs/options/

此外,第一个参数可能是不必要的。我建议尝试以下

var gulp = require('gulp'),
    browserSync = require('browser-sync');

gulp.task('browser-sync', function () {
 browserSync.init(null, {
  server: {
     baseDir: 'app',
     directory: true // or index: "index.html"
  }
 });
});

显然,在较新版本的浏览器同步中,它可以简单地初始化browserSync({ /* options */});,请参阅http://www.browsersync.io/docs/gulp/

于 2014-12-30T14:45:59.290 回答