2015-01-22 4 views
0

Как я могу уменьшить CSS, сгенерированный из LESS только в папку «dist»? Конечно, все плагины gulp правильно установлены. Все идет хорошо, за исключением сокращения CSS. Вот мой код:Gulp minify-css только для распространения

gulp.task('styles', function() { 
    return gulp.src('app/less/*.less') 
      .pipe($.less()) 
      .pipe(gulp.dest('.tmp/styles')); 
      .pipe(minifyCSS({keepBreaks:false})) 
      .pipe(gulp.dest('dist/styles')); 
}); 

Если переместить .pipe(minifyCSS({keepBreaks:false})) одну строку выше она работает. Но мне нужно иметь сжатый CSS только в dist forlder.

Благодарим за консультацию.

ответ

3

Это может быть не лучший способ, но я использую две разные задачи с глотками. Одна задача, которая компилирует CSS в мой каталог сборки, а затем другая задача берет этот вывод и минимизирует его в каталог dist. Используйте зависимость задачи, чтобы гарантировать, что файл будет создан до запуска задачи минимизации.

gulp.task('styles', function() { 
    return gulp.src(styles) 
    .pipe(concat('app.less')) 
    .pipe(gulp.dest('./build/styles')) 
    .pipe(less()) 
    .on('error', console.log) 
    .pipe(concat('app.css')) 
    .pipe(gulp.dest('./build/styles')); 
}); 

gulp.task('styles-dist', ['styles'], function() { 
    return gulp.src('build/styles/app.css') 
    .pipe(minifycss()) 
    .pipe(gulp.dest('./dist/styles'));  
}); 
+0

Это проблема, потому что когда я использую две задачи и один из, если это gulp.task («Минимизировать-стили», [ «стили»], функция() {...}, то это делать – quarky

+0

Я имею в виду, что было бы лучше запустить первую задачу, которая только скомпилирует CSS, и после этого запустите еще одну задачу, которая использует эти CSS и уменьшит ее. – quarky

+0

Я добавил некоторый пример кода. – Bill