gulp-useref
gulp-useref copied to clipboard
Jade layout option?
When using jade useref reads all the compiled .html files instead of only reading the layout template. And because of that compile time takes too long (~30min).
I've ended up writing tons of tasks solving this problem.
...
gulp.task('copy:jade', () => {
return gulp.src('app/views/layouts/*.jade')
.pipe(gulp.dest('app/views/tmp'));
});
gulp.task('clean:jade', () => {
return gulp.src(['dist/*jade', 'app/views/tmp'], {read: false})
.pipe($.clean());
});
gulp.task('useref', ['sass', 'copy:jade'], () => {
return gulp.src('app/views/layouts/*.jade')
.pipe($.useref({searchPath: ['.tmp', 'app']}))
.pipe(gulp.dest('dist'));
});
gulp.task('move:jade', ['useref'], () => {
return gulp.src('app/views/tmp/*.jade')
.pipe(gulp.dest('app/views/layouts'));
});
gulp.task('jade:move', () => {
return gulp.src('dist/*.jade')
.pipe(gulp.dest('app/views/layouts'));
});
...
What i'm doing here is:
- Compiling layout to dist
- Replace the original layout with compiled layout
- Run jade build with compiled layout
- Replace the original layout with backup layout
With this build time reduced from 30min to 10sec.
So is there any better way or simplify theyse tasks?
Could be an issue with gulp-useref internally but not one that is currently known or easily fixed.