gulp

作者: 菜鸟的旅行日记 | 来源:发表于2018-01-10 16:29 被阅读0次

    安装使用

        1.全局安装 npm install --global gulp

        2.项目依赖 npm install --save-dev gulp

        3.在项目根目录下创建一个名为 gulpfile.js 的文件:

            var gulp = require('gulp');

            gulp.task('default', function(){

             // 将你的默认的任务代码放在这});

        4.运行gulp,文件中的default任务会被执行,单独指定任务 gulp <task> <othertask>

    API

    gulp.src(globs[,options])     gulp.src('client/templates/*.jade')    

        输出符合提供的匹配模式,或者匹配模式数组的文件,将返回一个 Vinyl files 的 stream 它可以被 piped 到别的插件中。

    参数说明 

        globs 所要读取的 glob 或者包含 globs 的数组。

        options 通过 glob-stream 所传递给 node-glob 的参数。除了 node-glob 和 glob-stream 所支持的参数外,gulp 增加了一些额外的选项参数:

        options.buffer  Boolean 默认true 如果该项被设置为 false,那么将会以 stream 方式返回 file.contents 而不是文件 buffer 的形式

        options.read  Boolean 默认值: true  如果该项被设置为 false, 那么 file.contents 会返回空值(null),也就是并不会去读取文件。

    options.base    String 默认值: 将会加在 glob 之前

    node-golb语法 https://github.com/isaacs/node-glob

    gulp.dest(path[, options])

    gulp.src('./client/templates/*.jade').pipe(gulp.dest(path[, options]))    能被 pipe 进来,并且将会写文件。并且重新输出(emits)所有数据,因此你可以将它 pipe 到多个文件夹。如果某文件夹不存在,将会自动创建它。

    参数说明 

    path    String or Function    文件将被写入的路径(输出目录)。也可以传入一个函数,在函数中返回相应路径,这个函数也可以由 vinyl 文件实例 来提供。

    options.cwd    String 默认值: process.cwd() 输出目录的 cwd 参数,只在所给的输出目录是相对路径时候有效。

    options.mode    String 默认值: 0777    八进制权限字符,用以定义所有在输出目录中所创建的目录的权限。

    gulp.task(name[, deps], fn)

    参数说明

    name    任务的名字,如果你需要在命令行中运行你的某些任务,那么,请不要在名字中使用空格。

    deps    Array    一个包含任务列表的数组,这些任务会在你当前任务运行之前完成。

        gulp.task('mytask', ['array', 'of', 'task', 'names'], function() { 。。。});

    注意: 你的任务是否在这些前置依赖的任务完成之前运行了?请一定要确保你所依赖的任务列表中的任务都使用了正确的异步执行方式:使用一个 callback,或者返回一个 promise 或 stream。

    gulp.watch(glob[, opts], tasks)

    参数说明

    glob    String or Array    一个 glob 字符串,或者一个包含多个 glob 字符串的数组,用来指定具体监控哪些文件的变动。

    opts    Object    传给 gaze 的参数。

    tasks    Array    需要在文件变动后执行的一个或者多个通过 gulp.task() 创建的 task 的名字

    gulp.watch(glob[, opts, cb])

    glob    String or Array    一个 glob 字符串,或者一个包含多个 glob 字符串的数组,用来指定具体监控哪些文件的变动。

    opts    Object    传给 gaze 的参数。

    cb(event)    Function    每次变动需要执行的 callback。

    gulp.watch('js/**/*.js', function(event){

      console.log('File ' + event.path + ' was ' + event.type + ', running tasks...');

    });    

    callback 会被传入一个名为 event 的对象。这个对象描述了所监控到的变动:

    event.type    String    发生的变动的类型:added, changed 或者 deleted。

    event.path    String    触发了该事件的文件的路径。

    相关文章

      网友评论

          本文标题:gulp

          本文链接:https://www.haomeiwen.com/subject/sisonxtx.html