1.gulp的作用
gulp.js 是一个自动化构建工具,开发者可以使用它在项目开发过程中自动执行常见任务。Gulp.js 是基于Node.js 构建的,利用Node.js 流的威力,可以快速构建项目。
gulp可以 测试,检查,合并,压缩,格式化,部署,监听文件。
自动化 - gulp是一个工具包,可帮助您在开发工作流程中自动执行痛苦或耗时的任务。
与平台无关 - 集成内置于所有主要IDE中,人们正在使用gulp与PHP,.NET,Node.js,Java和其他平台。
强大的生态系统 - 使用npm模块做任何你想做的事情+超过3000个用于流文件转换的策划插件
简单 - 通过仅提供最小的API表面,gulp易于学习且易于使用
2.gulpfile.js
gulpfile.js是gulp项目的配置文件,它是来管理项目中的css,js等其他文件;
3.gulp有四个属性
即
src,dest,watch,task;
gulp.task(name[, deps], fn),
第一个参数name
是自定义你的任务名称,第二个参数[deps]是一个数组
,里面是你定义的其他任务的名称,这些任务会在本次定义的任务之前执行并完成
。第三个参数fn
是本次任务的回调函数。gulp.src(globs[, options])这个API获得要处理的文件源路径,
globs
是一个匹配模式,可以是string也可以是array,[options]
是可选的。主要是两个,options.base----匹配的根目录,options-readgulp.dest(path[, options]),path是string或者function,options有两个属性
options.cwd
和options.mode,options.cwd
用于计算输出目录的,只有提供的输出目录是相对路径时此参数才有用options.mode
用于创建的输出目录指定权限。默认值为077,gulp.dest()的作用是将 目的地址(gulp.dest()
)的基础路径(base)替换成
源地址(gulp.src()
)的基础路径(base)输出watch方法用于指定需要监视的文件。一旦这些文件发生变动,就运行指定任务。watch方法也可以用回调函数,代替指定的任务。watch方法所监控的文件发生变化时(修改、增加、删除文件),会触发change事件。可以对change事件指定回调函数。除了change事件,还有其他的。
pipe方法将上一个文件流输入,通过pipe管道输出
runSequence('task1', 'task2', ['task3', 'task4'], 'task5')
,这里的task都是gulp定义好的task名称,task1完成后才会执行task2,以此类推。注意到task3和task4被放在中括号里了,这表明,task3和task4可以并发执行的,但两个都执行完后才会执行task5