摘要:
前面分享了一些less的是用方法,包括在grunt中,今天在分享下使用gulp来编译less文件。首先需要安装gulp,如何安装请看文章。
安装插件:
gulp编译less使用了模块,所以package.json如下:
{ "name": "gulp-less", "version": "1.0.0", "private": true, "description": "gulp-less", "main": "gulpfile.js", "dependencies": {}, "devDependencies": { "gulp": "~3.5.6", "gulp-less": "1.3.6", "gulp-minify-css": "~0.3.0", "gulp-concat": "~2.4.0", "gulp-rename": "~1.2.0" }, "keywords": ["gulp","gulp-less","less"], "author": "", "license": "ISC"}
安装完之后新建gulpfile.js,文件结构:
gulpfile.js
public
|-->less
gulpfile.js:
var gulp = require('gulp'), less = require('gulp-less'), concat = require('gulp-concat'), rename = require('gulp-rename'), minifycss = require('gulp-minify-css');gulp.task('build-less', function(){ gulp.src('./public/less/*.less') .pipe(less({ compress: true })) .on('error', function(e){console.log(e);} ) .pipe(gulp.dest('./public/css/'));});// 合并、压缩、重命名cssgulp.task('min-styles',['build-less'], function() { gulp.src(['./public/css/*.css']) .pipe(concat('all.css')) // 合并文件为all.css .pipe(gulp.dest('./public/css/')) // 输出all.css文件 .pipe(rename({ suffix: '.min' })) // 重命名all.css为 all.min.css .pipe(minifycss()) // 压缩css文件 .pipe(gulp.dest('./public/css/')); // 输出all.min.css});gulp.task('develop', function() { gulp.watch('./public/less/*.less', ['build-less', 'min-styles']);});
在当前目录,通过命令窗执行
gulp build-less:你会在public/css/目录下发现less目录下的less文件被编译成对应的css文件。
gulp min-styles:会在css目录下输出all.css和all.min.css文件。
gulp develop:会监听所有less文件,当有less文件改变时,会执行build-less和min-styles