Ich imitierte den Code von John Papas hervorragendem Pluralsight-Kurs auf Gulp.Wie man Typfehler repariert, während man gulp-filter benutzt?
Wenn ich den Code verwenden, wie in John Kurs gezeigt:
.pipe(jsFilter)
.pipe($.uglify())
.pipe(jsFilter.restore())
bekomme ich einen Fehler in der 3. Zeile Code:
TypeError: Object #<StreamFilter> has no method 'restore'
Wenn ich den Code verwenden, wie in der Readme gezeigt von gulp-filter
.pipe(jsFilter)
.pipe($.uglify())
.pipe(jsFilter.restore)
Ich bekomme einen Fehler, dass es nicht zu undefined führen kann.
Basierend auf dem, was ich online finden kann, funktionieren diese beiden Muster für andere. Irgendwelche Hinweise, warum dies passieren könnte?
Hier ist die ganze Aufgabe, wenn das hilft und die Konsolenprotokollierung zeigt an, dass alles in Ordnung ist, bis der Filter wiederherstellen aufrufen.
Hier ist die gesamte Aufgabe, wenn das hilft:
gulp.task('build-dist', ['inject', 'templatecache'], function() {
log('Building the distribution files in the /dist folder');
var assets = $.useref.assets({searchPath: './'});
var templateCache = config.temp + config.templateCache.file;
var jsFilter = $.filter('**/*.js');
return gulp
.src(config.index)
.pipe($.plumber({errorHandler: onError}))
.pipe($.inject(gulp.src(templateCache, {read: false}), {
starttag: '<!-- inject:templates:js -->'
}))
.pipe(assets)
.pipe(jsFilter)
.pipe($.uglify())
.pipe(jsFilter.restore())
.pipe(assets.restore())
.pipe($.useref())
.pipe(gulp.dest(config.dist));
});
Sie sollten Andeis Antwort als Antwort markieren –