Что не так с этим файлом gulp? Когда он открывает браузер, он не показывает index.html. Вместо этого он перечисляет содержимое 'dist', каталога, содержащего index.html.

"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']);
8
Phillip Scott Givens 28 Фев 2016 в 21:20

4 ответа

Лучший ответ

Решение заключалось в том, чтобы ограничить версию gulp-connect до "gulp-connect": "^2.2.0",. Последняя версия работает иначе, но я не знаю правильный синтаксис последней. Когда я попробовал ответить с другого постера, страница отобразилась должным образом, но функции часов с ней не работали.

На момент написания этой статьи текущая версия - ^ 3.0.0.

Я использую Windows 7, если это имеет значение.

[Обновление] Согласно @SteveDavis, это было исправлено в версии 3.2.0.

4
Phillip Scott Givens 9 Май 2016 в 20:41

Привет, проблема связана с вашей открытой задачей, вы в основном говорите gulp открыть каталог dist, а не просто index.html

0
Arthur Stepanyuk 28 Фев 2016 в 18:27

Чтобы установить правильную версию плагина gulp-connect, убедитесь, что вы вводите npm install --save-dev gulp-connect@2.2.0 У меня была та же проблема, и возврат к этой версии решил ее.

0
Rian Adu 1 Мар 2016 в 21:23

Убедитесь, что index.html находится в папке проекта src, а не psadmin, чтобы он мог найти его там при выполнении.

gulp.src(config.paths.html)
.pipe(gulp.dest(config.paths.dist)
0
Genovo 6 Мар 2016 в 00:46