Wie man Vorlagenpfade in templateCache repariert? (Schluck-Angular-Templates)
Ich bin mit gulp-Winkel-templatecache zu generieren templateCache.js Datei mit allen meinen HTML-template-Dateien in 1. (meine volle gulpfile)
Nach der Injektion, das neue Modul in meine app, meine Richtlinien werden automatisch abholen die Vorlagen und ich werde nicht brauchen, um hinzuzufügen, die teilweise .html-Dateien in meinem Ordner.
Das problem ist, dass die führenden Pfad immer abgeschnitten, siehe mein Beispiel unten:
Die Pfade in meinen Richtlinien:
templateUrl : "panels/tags/tagsPanel.html"...
templateUrl : "header/platform_header/platformHeader.html"...
Die Pfade in meiner produziert templateCache Datei:
$templateCache.put("tags/tagsPanel.html"...
$templateCache.put("platform_header/platformHeader.html"...
^ panels
und header
immer verloren.
Ich bin versucht zu schreiben, eine Funktion, Update, das wird in meinem Gulpfile.
Den config-Abschnitt meiner Gulpfile:
var config = {
srcPartials:[
'app/beta/*.html',
'app/header/**/*.html',
'app/help/*.html',
'app/login/*.html',
'app/notificaitons/*.html',
'app/panels/**/*.html',
'app/popovers/**/*.html',
'app/popovers/*.html',
'app/user/*.html',
'app/dashboard.html'
],
srcPaths:[
'beta/',
'header/',
'help/',
'login/',
'notificaitons/',
'panels/',
'popovers/',
'popovers/',
'user/',
'dashboard.html'
],
destPartials: 'app/templates/'
};
Meine html-templates
Schluck.Aufgabe
gulp.task('html-templates', function() {
return gulp.src(config.srcPartials)
.pipe(templateCache('templateCache.js', {
root: updateRoot(config.srcPaths)
},
{ module:'templateCache', standalone:true })
).pipe(gulp.dest(config.destPartials));
});
function updateRoot(paths) {
for (var i = 0; i < paths.length; i++) {
//console.log(paths);
console.log(paths[i]);
return paths[i];
}
}
^ Die oben arbeiten, es verwendet die die option root in gulp-Winkel-templatecache zu fügen Sie eine neue Zeichenfolge vor dem template-Pfade.
Problem ist, mein code oben kehrt zurück und aktualisiert alle Pfade auf das erste Element in die Wege Array zurück, das ist beta/
.
Wie würden Sie dies so schreiben, dass es korrekt ersetzt den Pfad für jede einzelne Datei?
InformationsquelleAutor der Frage Leon Gaban | 2015-07-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es herausgefunden! Ich hätte nicht mit exakten Ordnernamen, aber der verklebt
**
in meiner configDen aktualisierten Schluck.Aufgabe:
Nun ist die Ausgabe korrekt ist:
InformationsquelleAutor der Antwort Leon Gaban
Ich lief in ein ähnliches Problem, aber in meinem Fall, war es nicht möglich, das gleiche Verzeichnis für alle zu schlucken.src-Einträge.
Gibt es eine Lösung, die alle diese Ordner
Setzt Voraus, dass die gulpfile ist ein Verzeichnis aus dem öffentlichen Verzeichnis. Es wird entfernen der base-string der vollständige Pfad der Dateien aus src.
Basis kann auch eine Funktion übergeben wird das file-Objekt, die hilfreich sein könnten, in komplizierteren Situationen. Es ist alles um die Zeile 60 der index.js in gulp-Winkel-templatecache
InformationsquelleAutor der Antwort phazei
Können Sie auch diese gulp-plugindie Lesen können Ihre Routen, Richtlinien und ersetzen Sie die templateUrl mit der Vorlage verwiesen, in der templateUrl.
Dies entfernt alle Kopfschmerzen in Bezug auf Handhabung templateUrl in Ihrer Anwendung. Diese verwendet eine relative url zu der Richtlinie js-Dateien, statt der absoluten url.
hello-world-directive.js:
hello-world-template.html:
gulpfile.js:
gulp-Winkel-embed-Vorlagen erzeugen Sie die folgende Datei:
InformationsquelleAutor der Antwort ankur kushwaha