2016-06-01 7 views
0

Ich habe die folgende OrdnerstrukturSchluck-injizieren. Sie möchten nicht Buildordner in Ausgabe

_build 
src 
|- \images 
|- \js 
|- \sass 

ich gebaut habe einen Schluck Prozess einzubeziehen, so dass, wenn mein .build Ordner beendet wird meine fertige Lösung

dh

enthalten
_build\index.html 
_build\images\*.* 
_build\js\site.min.js 
_build\css\site.css 

ich habe meine Aufgabe Schluck bekam meine sass Dateien, und die erzeugte Datei korrekt in den _build \ css Ordner

gespeichert wird zu kompilieren

nun in meiner Datei index.html, habe ich folgendes im Kopfelement

<!-- inject:css --> 
<!-- endinject --> 

Nun, was ich versuche, die injiziert folgende

<link rel="stylesheet" href="css/site.css"> 

aber was ich halten zu erhalten ist, erhalten auf endend up mit in

<link rel="stylesheet" href="/_build/css/site.css"> 

Dies ist meine Schluckaufgabe, die Injektion zu tun. p.s. Ich bin mit großen Schluck-Last-Plugins

$ aliased
gulp.task('inject', function() { 
    return gulp 
     .src('./src/index.html') 
     .pipe($.inject(gulp.src('./build/css/site.css', {read: false}), {relative: true})) 
     .pipe(gulp.dest('./_build/')); 
}); 

Aufgrund meiner Interpretation der Dokumentation auf https://www.npmjs.com/package/gulp-inject Lesen, um die relative Option nicht/_build/in der Ausgabe enthalten soll. Es wird jedoch nicht ausgeschlossen.

Wie konfiguriere ich schluck-inject richtig excludethe/_build/path

Antwort

0

Sie sagen spritzen den relativen Pfad zur Datei zu verwenden. Aber relativ zu was? Nun, relativ zur Quelle Ihrer Injektion.

Wenn Ihre Quelle ist:

./build/css/site.css 

Sie ein Verzeichnis, in dem Baum hinauf, so spritzt bei ./ steht, wo immer das sein mag. Bedeutung, build/css/site.css ist der korrekte relative Pfad.

Nun, wenn Ihre Quelle auf der anderen Seite ist:

build/css/site.css 

Der relative Pfad zur CSS ist /css/site.css.

Lange Geschichte kurz. Anruf aus dem richtigen Verzeichnis injizieren:

gulp.task('inject', function() { 
    return gulp 

     .src('./src/index.html') 
     .pipe($.inject(gulp.src('build/css/site.css', {read: false}), {relative: true})) 
     .pipe(gulp.dest('./_build/')); 
}); 

beseitigen ./

bearbeiten

Sie müssen möglicherweise geändert werden und mit Ihrem cwd (aktuelle Arbeitsverzeichnis) spielen

Verwandte Themen