gulp基本操作 - coffeeScript

 

gulp=require('gulp')
del=require('del')
runSequence = require('run-sequence')
#安装任务队列插件run-sequence,可以执行我们的task任务
#并且指定任务的执行顺序
uglify=require('gulp-uglify')#压缩js文件
minifyCss=require('gulp-minify-css')#压缩css文件
#unCss = require('gulp-uncss')
browserSync = require('browser-sync').create()
#task指定任务第一个参数是任务名称 为default就是
#默认任务,第二个参数要执行的任务回调函数
#新建默认任务
gulp.task('default',(callback)->
  runSequence(['clean'],['build'],['server','watch'],callback)
  #run-sequence 处理,可定义 异步( 并行 )和 同步 队列。 
  #参数与参数之间的任务按顺序执行(同步)
  #同一参数数组中的任务是并列同时执行(异步)
)
#直接删除dist目录,方便重新构建
gulp.task('clean',(callback)->
  del(['./dist'],callback)
)
#创建build任务链,按顺序执行copy minijs minicss任务
gulp.task('build',(callback)->
  runSequence(['copy'],['minijs'],['minicss'],callback)
)
#src下**所有文件夹 *.* 所有文件
gulp.task('copy',->
  gulp.src('./src/**/*.*')
    .pipe(gulp.dest('./dist/'))
)
#压缩src下所有的js文件的任务
gulp.task('minijs',->
  gulp.src('./src/**/*.js')
  #通过pipe管道读取的js数据流流经uglify处理
  #变成压缩后的数据流
    .pipe(uglify())
    .pipe(gulp.dest('./dist/'))
)
#压缩src下所有的css文件的任务
gulp.task('minicss',->
  gulp.src('./src/**/*.css')
    .pipe(minifyCss())
# .pipe(unCss())
    .pipe(gulp.dest('./dist/'))
)
#新建一个任务 将所有的自己写的js文件拼接成
#all.js文件
gulp.task('concat',->
  gulp.src('./src/*.js')
    .pipe(concat('all.js',{newLine:';\n'}))
    .pipe(gulp.dest('./dist/'))
)
#新建创建服务器的任务,来让浏览器运行我们的前端页面
gulp.task('server', ->
  browserSync.init({
    server:{
      baseDir:'./dist/'
    }
    port:7411
  })
)
#监视文件是否改变
gulp.task('watch',->
  gulp.watch('./src/**/*.*',['reload'])
)
#文件修改后要自动执行的任务
#把上面的任务再做一次
gulp.task('reload',(callback)->
  runSequence(['build'],['reload-browser'],callback)
)
#刷新浏览器的任务
gulp.task('reload-browser',->
  browserSync.reload()
)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值