有没有办法在Gulp中将.css与.less合并?

到目前为止,我没有find解决办法。 以下是我现在想到的:

var gulp = require('gulp'); var concat = require('gulp-concat'); var uncss = require('gulp-uncss'); var minifyCSS = require('gulp-minify-css'); var concatCss = require('gulp-concat-css'); var less = require('gulp-less'); var stripCssComments = require('gulp-strip-css-comments'); gulp.task('css', function() { return gulp.src('css/*.css') .pipe(stripCssComments({all:true})) .pipe(concat('plugins.css')) .pipe(uncss({html: ['index.html']})) .pipe(minifyCSS()) .pipe(gulp.dest('build/css')); }); gulp.task('less', function() { return gulp.src('css/*.less') .pipe(less()) .pipe(stripCssComments({all:true})) .pipe(concat('styles.css')) .pipe(uncss({html: ['index.html']})) .pipe(minifyCSS()) .pipe(gulp.dest('build/css')); }); 

基本上我试图将.less与.css合并,我只想要一个.css在构build。 我尝试了不同的语法,以达到这种效果,但无济于事,吞咽总是给我一个错误消息。 任何人有一个想法?

如果.css文件在css/你的css任务说,为什么不只是重命名他们?

如果你不想这样做, less提供的能力 (不像Sass)导入原始的CSS文件。

 @import (css) "file1.css"; @import (css) "files2.css"; ... 

从你的任务,我不明白为什么你不能将2合并成一个'less'任务,并更新你的主要.less文件,导入所有的.css文件。

我一直在这个工作,并相信我有一个干净的解决scheme,使用几个吞咽插件。

 gulp.task('css', function() { var cssFiles = [src + 'styles/*.css', 'bower_components/jquery.onoff/dist/jquery.onoff.css']; var cssStream = gulp.src(plugins.mainBowerFiles().concat(cssFiles)) .pipe(plugins.filter('*.css')) .pipe(order([ "app/styles/site.css", "*" ])); var lessStream = gulp.src(plugins.mainBowerFiles()) .pipe(plugins.filter('*.less')) .pipe(less({ paths: [ path.join(__dirname, 'less', 'includes') ] })); return merge(cssStream, lessStream) .pipe(plugins.concat('main.css')) .pipe(minifyCSS({keepBreaks:true})) .pipe(gulp.dest(dest + 'css')); }); 

我的例子是显示自动包含鲍尔文件,他们是正确的设置,并将其添加到cssFilesvariables,他们不是。 这个CSSstream是合并与较less的stream以类似的方式运行。 我会想象以相同的方式添加SASS文件将是简单的。 我的package.json包含了这个实现所需要的,但看起来像这样。

 { "name": "MHD_Site_v3", "version": "0.0.1", "description": "", "dependencies": { "bower": "~0.8.0", "gulp-less": "^3.0.3", "gulp-logger": "0.0.2" "gulp": "^3.8.11", "gulp-cache": "^0.2.4", "gulp-concat": "^2.4.3", "gulp-debug": "^2.0.0", "gulp-filter": "^2.0.0", "gulp-imagemin": "^2.1.0", "gulp-jade": "^0.11.0", "gulp-less": "^2.0.1", "gulp-load-plugins": "^0.8.0", "gulp-minify-css": "^0.4.0", "gulp-minify-html": "^0.1.8", "gulp-order": "^1.1.1", "gulp-rename": "^1.2.0", "gulp-sourcemaps": "^1.3.0", "gulp-uglify": "^1.1.0", "less-plugin-clean-css": "^1.4.0", "main-bower-files": "^2.5.0", "merge-stream": "^0.1.7", "gulp-util": "^3.0.5", "path": "^0.11.14" }, "devDependencies": { } }