2016-08-02 9 views
0

Ich baue eine statische Website mit Gulp, BrowserSync, und alles funktioniert gut bis zu dem Punkt, wo ich meine Änderungen auf meine gh-Seiten Zweig hofft dass es korrekt über die gh-pages-website rendert, die ich erstelle. Ich habe einige Nachforschungen angestellt, und ich weiß, dass aufgrund der Art, wie gh-Seiten funktionieren, der Pfad, den ich für Links, Bilder usw. verwende, das Wurzelverzeichnis enthalten muss ... und einige der Änderungen, die ich vorgenommen habe der Code wird funktionieren, aber es schraubt schließlich wie die Seite funktioniert, während es lokal mit Schluck läuft. Außerdem habe ich ein Problem mit dem Laden einer Teil-HTML-Seite über jquery, was meiner Meinung nach auch damit zu tun hat, dass der Pfad falsch ist, wenn er auf Gh-Seiten gehostet wird. Alles funktioniert gut, wenn ich es lokal mit Schluck führe. Wenn ich nur die Seite index.html vom Terminal aus öffne, funktioniert es gut, aber sobald ich auf einen Link klicke, werden die Dinge unordentlich. Kennt jemand ein gründliches Tutorial, Video, Blog oder zufällig eine gute Möglichkeit, mein Verzeichnis einzurichten, um sicherzustellen, dass es sowohl lokal als auch wenn es auf gh-page hochgeschoben wird? Ich habe ein Foto eingefügt, das zeigt, wie mein Verzeichnis derzeit eingerichtet ist. enter image description hereProbleme bei der Bereitstellung einer gh-Seite nach dem Erstellen einer statischen Site mit Gulp

Meine gulpfile sieht aus wie diese

var gulp = require('gulp'); 
    var sass = require('gulp-sass'); 
    var browserSync = require('browser-sync').create(); 

    gulp.task('styles', function() { 
     return gulp.src('./scss/main.scss') 
     .pipe(sass()) 
     .pipe(gulp.dest('./css')) 
     .pipe(browserSync.reload({stream: true})); 
    }); 

    gulp.task('serve', function() { 
     browserSync.init({ 
     server: { 
      baseDir: './' 
     } 
     }); 

     gulp.watch('./scss/*.scss', ['styles']); 
     gulp.watch('./**/*.html').on('change', browserSync.reload); 
    }); 

    gulp.task('default', ['styles', 'serve']); 

ist die Website, wie sie derzeit auf gh-Seiten sind: https://andrewdpohl.github.io/STHR/

Vielen Dank im Voraus

+0

Wenn Sie den Basispfad auf dem lokalen Entwickler wissen, und Sie wissen den Basispfad auf GH-Seiten, können Sie nicht machen ein separate Build-Einstellung, die den Basispfad in Ihrem Code ersetzt? – Randy

+0

Nicht genau, wie ich das machen würde. Meinst du, eine Schluckaufgabe ausführen, die im Wesentlichen ALLE meine Dateien nimmt und sie in ihren eigenen Ordner legt, der auf gh-pages veröffentlicht würde? –

Antwort

0

Die Verwendung von .src() dokumentiert auf die Vinyl-fs Github Repo: https://github.com/wearefractal/vinyl-fs

Die Eigenschaft base wird verwendet, um die Dateinamen beim Speichern in .dest() zu bestimmen.

Ich glaube, Sie das aktuelle Arbeitsverzeichnis festlegen müssen:

gulp.src('./**/*.js', {cwd: '../src/main/'}) 
    .pipe(gulp.dest('../target/dist')); 
Verwandte Themen