Gulp Connect列出目录,而不是显示index.html。为什么?

Gulp Connect列出目录,而不是显示index.html。为什么?,gulp,gulp-connect,Gulp,Gulp Connect,这个吞咽文件怎么了?当它打开浏览器时,不会显示index.html。相反,它列出了包含index.html的目录“dist”的内容 "use strict"; var gulp = require('gulp'); var connect = require('gulp-connect'); // Runs a local dev server var open = require('gulp-open'); var config = { port: 9005, devBas

这个吞咽文件怎么了?当它打开浏览器时,不会显示index.html。相反,它列出了包含index.html的目录“dist”的内容

"use strict";

var gulp = require('gulp');
var connect = require('gulp-connect'); // Runs a local dev server
var open = require('gulp-open');

var config = {
    port: 9005,
    devBaseUrl: 'http://localhost',
    paths: {
        html: './src/*.html',
        dist: './dist'
    }
};

//Start a local development server
gulp.task('connect', function() {
    connect.server({
        root: ['dist'],
        port: config.port,
        base: config.devBaseUrl,
        livereload: true
    });
});

gulp.task('open', ['connect'], function () {
    gulp.src('dist/index.html')
        .pipe(open({
            uri: config.devBaseUrl + ':' + config.port + '/', 
            app: 'chrome' }));

});

gulp.task('html', function() {
    gulp.src(config.paths.html)
        .pipe(gulp.dest(config.paths.dist))
        .pipe(connect.reload());
});

gulp.task('watch', function() {
    gulp.watch(config.paths.html, ['html']);
});

gulp.task('default', ['html', 'open', 'watch']);

您好,问题是您的打开任务基本上是告诉gulp打开dist目录而不是index.html

解决方案是将gulp connect的版本限制为
“gulp connect”:“^2.2.0”
最新版本的工作原理不同,但我不知道最新版本的正确语法。当我试着从另一张海报上找到答案时,页面如预期的那样显示出来,但手表的功能无法使用

撰写本文时,当前版本为^3.0.0

如果这有什么不同的话,我会使用Windows7


[更新]根据@SteveDavis,这在3.2.0版中已修复

要安装正确版本的gulp connect插件,请确保键入
npm安装--保存开发包-connect@2.2.0
我也遇到了同样的问题,换回那个版本就解决了

确保index.html位于src not psadmin项目文件夹下,以便它在执行时可以在那里找到它

gulp.src(config.paths.html)
.pipe(gulp.dest(config.paths.dist)

我查过了。我是从PluralSight中的一个例子开始工作的,它是这样做的。它曾一度奏效。此外,上给出的示例也是这样做的。如果我中断文档并附加index.html,它会显示在浏览器中,但“监视”不起作用。此技巧是一个救命稻草。非常感谢。这个问题在3.2.0版中得到了修复。你写的和我写的有什么不同?