2014-10-26 3 views
0

Я только начал работать с глотком и не совсем понял некоторые вещи. Вот мой gulpfileУтерянные файлы с gulp-clean

gulp.task('css', function(){ 
    var processors = [ 
    csswring({ 
     removeAllComments: true 
    }) 
    ]; 

    gulp.src(['css/**/*.css', '!css/reset.css']) 
    .pipe(concat('withoutReset.css')) 
    .pipe(gulp.dest('./tmp')); 

    return gulp.src(['css/reset.css', 'tmp/withoutReset.css']) 
    .pipe(sourcemaps.init()) 
    .pipe(concat('style.css')) 
    .pipe(postcss(processors)) 
    .pipe(sourcemaps.write('/map/style')) 
    .pipe(gulp.dest('public/css')); 
}); 

gulp.task('main', ['css'], function() { 
    return gulp.src('tmp', {read: false}) 
    .pipe(clean()); 
}); 

gulp.task('default', ['main']); 

Когда я запускаю эту задачу в общественном/CSS/style.css я получаю только преуменьшать сбросить файл без всех остальных, но если бы я комментировал чистую линию, это работает отлично.

Я думал, что style.css должен быть создан до запуска чистой задачи, это не так?

Как я могу сделать это отлично работает без изменения структуры папок, то это означает, что сброс файл может быть на одном уровне с некоторыми другими, которые также должны следовать после него (линии от сброса должны быть всегда первым)

И это будет хорошо, если бы вы объяснить, или отправить ссылку, где я могу прочитать, почему он не работает с текущим кодом

+1

Вторая задача 'gulp.src' в css не ждет завершения первого' gulp.src'. В чем причина написания там файлов tmp? – Heikki

ответ

0

Позор на меня (

Благодаря @Heikki - это была проблема с асинхронно, поэтому я ставлю конкатенацию отдельная задача (угадайте, что-то, чтобы сделать ее в одной задаче, но я только начинаю), и она хорошо работает)

+0

Чтобы сделать это в одной задаче «.pipe» два конвейера вместе, не вдаваясь в «tmp». В этом весь смысл глотки/трубопроводов. Нет необходимости в временном материале. – spelufo

Смежные вопросы