博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
gulp学习记录
阅读量:6305 次
发布时间:2019-06-22

本文共 2314 字,大约阅读时间需要 7 分钟。

hot3.png

gulp原生方法

  • gulp.src()    src方法指定需要处理的源文件路径

        例如:gulp.src('src/js/*.js')      gulp.src(['src/**/*',‘!src/a.js‘])

        “*”:匹配所有文件    例:src/*.js(包含src下的所有js文件);

        “**”:匹配0个或多个子文件夹    例:src/**/*.js(包含src的0个或多个子文件夹下的js文件);

       “{}”:匹配多个属性    例:src/{a,b}.js(包含a.js和b.js文件)  src/*.{jpg,png,gif}(src下的所有jpg/png/gif文件);

        “!”:排除文件    例:!src/a.js(不包含src下的a.js文件);

  • gulp.dest()   dest方法指定处理完成后文件的输出路径
  • gulp.task()   定义一个gulp任务
       gulp.task('任务名称',['依赖的任务(可选)’],function(){
       })
  • gulp.watch()    watch用于监听文件变化

gulpfile文件常用函数

  • 拷贝文件
gulp.task('copy', function(){         gulp.src('src/fonts/**/*')                .pipe(gulp.dest('dist/fonts/'))     })
  • 创建本地服务器
var connect=require('gulp-connect');       gulp.task('myServer', function() {                connect.server({                     root: 'app',                     port: 8000,                     livereload: true                 });        });

        //其中root是服务启动的根目录,换句话说别人通过IP+Port端口访问到你的服务器所访问到文件夹就是root(这里是'app'),port就是端口了,livereload是一个标志,为true时gulp会自动检测文件的变化然后自动进行源码构建。 

  • 合并文件
    var concat = require('gulp-concat');gulp.task('concat', function () {    gulp.src('src/js/*.js')        .pipe(concat('all.js'))//合并后的文件名        .pipe(gulp.dest('dist/js'));});

     

  • 压缩html文件
    var htmlmin = require('gulp-htmlmin');gulp.task('testHtmlmin', function () {    var options = {        removeComments: true,//清除HTML注释        collapseWhitespace: true,//压缩HTML        collapseBooleanAttributes: true,//省略布尔属性的值  ==>         removeEmptyAttributes: true,//删除所有空格作属性值  ==>         removeScriptTypeAttributes: true,//删除

     

  • 压缩js文件
 var uglify = require('gulp-uglify')    gulp.task('uglifyjs', function () {         gulp.src('src/js/**/*.js')                  .pipe(uglify())                .pipe(gulp.dest('dist/js'))      })
  • 压缩图片
    var imagemin = require('gulp-imagemin');gulp.task('Imagemin', function () {    gulp.src('src/img/*.{png,jpg,gif,ico}')        .pipe(imagemin())        .pipe(gulp.dest('dist/img'));});

     

  • 压缩css文件
    var minifycss = require('gulp-minify-css')gulp.task('testCssmin', function () {    gulp.src('src/css/*.css')        .pipe(minifycss())        .pipe(gulp.dest('dist/css'));});

     

  • 编译less文件
 var less=require('gulp-less');        gulp.task('less',function(){            gulp.src('src/**/*.less')                    .pipe(less())                    .pipe(gulp.dest('src/css/'));           });

 

转载于:https://my.oschina.net/u/3759734/blog/1603134

你可能感兴趣的文章
C语言OJ项目参考(2493)四则运算
查看>>
零基础入门深度学习(二):神经网络和反向传播算法
查看>>
find和xargs
查看>>
数据结构例程—— 交换排序之快速排序
查看>>
WKWebView代理方法解析
查看>>
IOS定位服务的应用
查看>>
[SMS&WAP]实例讲解制作OTA短信来自动配置手机WAP书签[附源码]
查看>>
IOS中图片(UIImage)拉伸技巧
查看>>
【工具】系统性能查看工具 dstat
查看>>
基于zepto或jquery的手机端弹出框成功,失败,加载特效
查看>>
php引用(&)
查看>>
关押罪犯
查看>>
k8s-高可用架构设计
查看>>
第93天:CSS3 中边框详解
查看>>
第189天:BOM属性方法
查看>>
操作系统
查看>>
volatile小记
查看>>
Socket通道
查看>>
微信接口调用返回码一览表
查看>>
PCI Express(四) - The transaction layer
查看>>