2016-02-28 17 views
8

Co jest nie tak z tym plikiem łyku? Kiedy otwiera przeglądarkę, nie wyświetla ona pliku index.html. Zamiast tego wyświetla zawartość "dist", czyli katalogu zawierającego index.html.Gulp-Connect wyświetla listę zamiast wyświetlać index.html. Czemu?

"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']); 

Odpowiedz

4

Rozwiązaniem było ograniczyć wersję haustem-podłączyć do "gulp-connect": "^2.2.0", Najnowsza wersja działa inaczej , ale nie znam poprawnej składni najnowszego. Gdy próbowałem odpowiedzi z drugiego plakatu, strona była wyświetlana zgodnie z oczekiwaniami, ale funkcje zegarka nie działały z nią.

W chwili pisania tego tekstu bieżąca wersja to^3.0.0.

Jestem na Windows 7, jeśli to robi różnicę.

[Aktualizacja] Zgodnie z @SteveDavis zostało to naprawione w wersji 3.2.0.

+1

Ta wskazówka była ratunkiem. Dziękuję Ci! –

+1

Ten problem został rozwiązany w wersji 3.2.0. –

+0

Dziękujemy za aktualizację. :-) –

0

Witam Problem jest z otwartego zadania w zasadzie mówienie łyk otworzyć katalogu dist zamiast po prostu index.html

+0

Sprawdziłem to. Pracuję na przykładzie w PluralSight, który robi to w ten sposób. Działało w jednym punkcie. Również przykład podany na [npmjs.com] (https://www.npmjs.com/package/gulp-open) robi to w ten sposób. –

+0

Jeśli zerwam z dokumentacją i dopiszę plik index.html, pojawi się on w przeglądarce, ale "zegarek" nie działa. –

0

Aby zainstalować poprawną wersję wtyczki gulp-connect, należy wpisać: npm install --save-dev [email protected] Miałem ten sam problem i przejście z powrotem do tej wersji rozwiązało problem.

0

Upewnij index.html jest w folderze src nie PSAdmin projektu, więc może go znaleźć tam, kiedy to wykonuje

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

Czym się różnisz od tego, co napisałem? –