Gulp 是一个基于流的 JavaScript 任务自动化工具,广泛用于前端开发中的构建流程。它通过代码而非配置来定义任务,结合丰富的插件生态,可高效完成代码压缩、自动化测试、代码格式化等操作。🚀
核心特点
- 流式处理:无需写入临时文件,直接在内存中操作数据流
- 插件系统:超过3000个官方及第三方插件支持(如
gulp-eslint
) - 代码优先:用 JavaScript 编写任务逻辑,灵活性高
- 快速构建:并行执行任务,提升开发效率
常见用途
- 压缩 JavaScript/CSS 文件
- 自动化代码格式化(如 Prettier)
- 启动本地服务器并实时刷新
- 集成单元测试与代码检查
快速入门示例
// gulpfile.js
const { src, dest, series } = require('gulp');
const uglify = require('gulp-uglify');
const sass = require('gulp-sass');
// JavaScript 压缩任务
function jsTask() {
return src('src/js/*.js')
.pipe(uglify())
.pipe(dest('dist/js'));
}
// CSS 转换任务
function cssTask() {
return src('src/sass/*.sass')
.pipe(sass().sync())
.pipe(dest('dist/css'));
}
// 默认任务
exports.default = series(jsTask, cssTask);
扩展阅读
如需了解 Gulp 与其他构建工具(如 Grunt 或 Webpack)的对比,可点击 Gulp vs Grunt 查看详细分析 📚