gulp-useref icon indicating copy to clipboard operation
gulp-useref copied to clipboard

Jade layout option?

Open 3ilguun opened this issue 8 years ago • 1 comments

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:

  1. Compiling layout to dist
  2. Replace the original layout with compiled layout
  3. Run jade build with compiled layout
  4. 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?

3ilguun avatar Apr 26 '16 09:04 3ilguun

Could be an issue with gulp-useref internally but not one that is currently known or easily fixed.

jonkemp avatar May 05 '16 13:05 jonkemp