gulp-less,gulp-sass 和 gulp-sourcemaps 的简介:
gulp-less 插件用来将 less 文件编译成 css文件。
gulp-sass 插件用来将 sass 文件编译成 css 文件。
gulp-sourcemaps 插件用来生成 sourcemap 文件。用于当 less 或 sass 文件中有各种引入关系时,编译后就不容易找到对应的 less 或 sass 文件,所以需要生成 sourcemap 文件,方便修改。
一、gulp-less,gulp-sass 和 gulp-sourcemaps 插件的使用
1、安装 “gulp-less,gulp-sass 和 gulp-sourcemaps”插件命令(在终端进入到项目根目录执行)
npm install --save-dev gulp-load-plugins gulp-less gulp-sass gulp-sourcemaps
2、在项目根目录下提供 "gulp-less 和 gulp-sass" 插件任务配置需要的 src 目录和源文件(源文件放置到 src 目录下)
mkdir src
3、在 gulpfile.js 文件中配置使用 "gulp-less,gulp-sass 和 gulp-sourcemaps"
具体示例:
// 只使用 gulp-less 和 gulp-sourcemaps 插件
var gulp = require('gulp'),
plugins = require('gulp-load-plugins')(); // 装载插件
gulp.task('less', function () { // 自定义 "less" 任务
return gulp.src('src/less/*.less') // 模糊匹配 src/less 目录下所有 less 文件
.pipe(plugins.sourcemaps.init()) // 初始化 gulp-sourcemaps 插件
.pipe(plugins.less()) // 调用 less 插件,编译 less 文件
.pipe(plugins.sourcemaps.write()) // 生成 sourcemap 文件
.pipe(gulp.dest('dist/less')); // 目标文件存放路径
});
具体示例:
// 只使用 gulp-sass 和 gulp-sourcemaps 插件
var gulp = require('gulp'),
plugins = require('gulp-load-plugins')(); // 装载插件
gulp.task('sass', function () { // 自定义 "sass" 任务
return gulp.src('src/sass/*.scss') // 模糊匹配 src/sass 目录下所有 scss 文件
.pipe(plugins.sourcemaps.init()) // 初始化 gulp-sourcemaps 插件
.pipe(plugins.sass()) // 调用 sass 插件,编译 sass 文件
.pipe(plugins.sourcemaps.write()) // 生成 sourcemap 文件
.pipe(gulp.dest('dist/sass')); // 目标文件存放路径
});
// 定义默认任务
gulp.task('default', [ 'less' , 'sass' ], function(){
gulp.watch('src/less/*.less', function(){ // 监听 src/less 目录下的所有 less 文件,自动编译
gulp.run('less');
});
gulp.watch('src/less/*.scss', function(){ // 监听 src/sass 目录下的所有 scss 文件,自动编译
gulp.run('sass');
});
});
4、最后在终端运行 "gulp" 命令
PS:如果没有错误提示信息,证明就没什么问题了。现在去项目根目录下看是否生成 "dist/{less/sass}" 目录和目标文件。未完待续。。。