看视频所了解到的,正在进行摸索。

参考:https://www.cnblogs.com/2050/p/4198792.html这篇介绍gulp的文章非常棒,唯一有一点,页面随时刷新的目前还没实现,不知道是什么原因。

跟着例子敲的

  1. var gulp = require('gulp');
  2. var less = require('gulp-less');
  3. var sass = require('gulp-sass');
  4. var livereload = require('gulp-livereload');

var imagemin = require('gulp-imagemin');
  var pngquant=require('imagemin-pngquant');

  1.  

  //图片压缩
  gulp.task('img', function () {
    gulp.src('img/*')
    .pipe(imagemin({
    progressive: true,
    use: [pngquant()] //使用pngquant来压缩png图片
    }))
    .pipe(gulp.dest('dist/img'));
  });

  1. //gulp.task('default',['one','two','three'],function(){ //执行默认任务
  2. // console.log('Hello world') //hello world 会在任务one two three三个任务执行完之后才执行
  3. //})
  4. /*
  5. gulp.src("a.less")
  6. .pipe(gulp.dest('dist'));
  7.  
  8. gulp.task('one',function(){ //gulp.task(name[, deps], fn)
  9. console.log('one is done')
  10. })
  11. gulp.task('two',function(){ //gulp.task(name[, deps], fn)
  12. console.log('two is done')
  13. })
  14.  
  15. gulp.task('three',function(){ //gulp.task(name[, deps], fn)
  16. console.log('three is done')
  17. })
  18.  
  19. gulp.task('default',['first','second'],function(){ //执行默认任务
  20. console.log('Hello world') //此时的输出顺序为second Hello world 最后first two任务虽然依赖于one任务,但并不会等到one任务中的异步操作完成后再执行
  21. })
  22. gulp.task('first',function(){
  23. setTimeout(function(){ //这是一个异步任务
  24. console.log('first')
  25. },1000)
  26. })
  27. gulp.task('second',['first'],function(){
  28. console.log('second')
  29. })
  30.  
  31. gulp.task('default',['first','second'],function(){ //执行默认任务
  32. console.log('Hello world') //此时的输出顺序为second Hello world 最后first two任务虽然依赖于one任务,但并不会等到one任务中的异步操作完成后再执行
  33. })
  34. gulp.task('first',function(cb){
  35. setTimeout(function(){ //这是一个异步任务
  36. console.log('first')
  37. cb();//执行回调,表示这个异步任务已经完成
  38. },1000)
  39. })
  40. //这时second任务会在first任务中的异步操作完成后再执行
  41. gulp.task('second',['first'],function(){
  42. console.log('second')
  43. })
  44.  
  45. //gulp watch监听
  46. gulp.task('default',function(){ //执行默认任务
  47. gulp.src("a.less")
  48. .pipe(gulp.dest('dist'));
  49. })
  50. gulp.watch('*.less',function(event){
  51. console.log(event.type)
  52. console.log(event.path)
  53. })
  54. */
  55. //gulp.task('html', function () {
  56. // gulp.src('index.html')
  57. // .pipe(livereload())
  58. //});
  59.  
  60. gulp.task('less', function () { //less方法
  61. gulp.src('less/*.less')
  62. .pipe(less())
  63. .pipe(gulp.dest('dist/css'))
  64. .pipe(livereload())
  65. });
  66. /*
  67. gulp.task('sass', function () { //sass方法
  68. gulp.src('sass/*.sass')
  69. .pipe(sass())
  70. .pipe(gulp.dest('dist/sass'))
  71. });
  72. */
  73. gulp.task('watch',function(file){ //watch方法监听less编译
  74. livereload.listen(); //要在这里调用listen()方法
  75. gulp.watch('less/*.less', ['less']); //监听的文件,方法
  76. });
  77. /*总结
  78. * 1 gulp.src引入文件
  79. * 2 .pipe()转成流的方式
  80. * 3 gulp.dest 输出
  81. * 4 gulp.task 任务
  82. * 5 gulp.watch 监听
  83. */

yarn依赖管理工具,和fis3构建工具 gulp详细用法的更多相关文章

  1. yarn依赖管理工具的使用

    Yarn是Facebook发布的一款依赖管理工具,它比npm更快.更高效. 与NPM命令对照 npm install => yarn install npm install --save [pa ...

  2. 怎么在项目中使用前端包管理器bower和构建工具gulp

    下面以WeUI(微信官方网页开发样式库)介绍一下,怎么把WeUi引入到自己的项目中,我的开发环境Visual Studio 2012,当然了Visual Studio 2015对此已有了更好的支持(h ...

  3. [Linux] ubuntu下yarn依赖管理工具的安装和使用

    Yarn 对你的代码来说是一个包管理器, 你可以通过它使用全世界开发者的代码, 或者分享自己的代码.Yarn 做这些快捷.安全.可靠,所以你不用担心什么.通过Yarn你可以使用其他开发者针对不同问题的 ...

  4. 着重基础之—构建工具—Maven的依赖管理

    着重基础之—构建工具—Maven的依赖管理 项目构建利器Maven给我们开发人员带来了极大的便利,从繁琐的jar包管理中脱身的程序员终于可以有时间再进入另一个坑了. 我今天要给大家分享的内容是我在实际 ...

  5. 前端自动化构建工具-yoman浅谈

    如今随着前端技术的飞速发展,前端项目也变得越来越复杂. 快速的搭建一个集成多种工具和框架的复杂前端项目也越来越成为一种需求. 当然如果你要自己从0开始完全自己diy,绝对可以,只不过需要耗费一些不少的 ...

  6. 高效使用Java构建工具,Maven篇|云效工程师指北

    大家好,我是胡晓宇,目前在云效主要负责Flow流水线编排.任务调度与执行引擎相关的工作. 作为一个有多年Java开发测试工具链开发经验的CRUD专家,使用过所有主流的Java构建工具,对于如何高效使用 ...

  7. JavaScript自动化构建工具入门----grunt、gulp、webpack

    蛮荒时代的程序员: 做项目的时候,会有大量的js 大量的css   需要合并压缩,大量时间需要用到合并压缩 在前端开发中会出现很多重复性无意义的劳动  自动化时代的程序员: 希望一切都可以自动完成  ...

  8. Visual Studio Code初识与自动化构建工具安装

    1.Visual Studio Code如何新建文件夹 要自己手动在本地新建,然后再点击文件->打开文件夹即可. 之后你就可以任意添加文件了 2.如何使用自动化构建工具 通过自动化构建工具,用户 ...

  9. 脚手架vue-cli系列二:vue-cli的工程模板与构建工具

    上篇文章我们提到了vue-cli的工程模板.这里我们来详细的进行介绍. vue-cli提供的脚手架只是一个最基础的,也可以说是Vue团队认为的工程结构的一种最佳实践.对于初学者或者以前曾从事Angul ...

随机推荐

  1. poj2115(扩展欧基里德定理)

    题目链接:https://vjudge.net/problem/POJ-2115 题意:模拟for循环for(int i=A;i!=B;i+=C),且数据范围为k位无符号数以内,即0~1<< ...

  2. Ubuntu修改时间时区

    设定时区:dpkg-reconfigure tzdata 选择Asia,Hong Kong. sudo apt-get install ntpdate // 安装时间同步工具 sudo ntpdate ...

  3. [leetcode]156.Binary Tree Upside Down颠倒二叉树

    Given a binary tree where all the right nodes are either leaf nodes with a sibling (a left node that ...

  4. python爬取网页的通用代码框架

    python爬取网页的通用代码框架: def getHTMLText(url):#参数code缺省值为‘utf-8’(编码方式) try: r=requests.get(url,timeout=30) ...

  5. CentOS 7升级Python到3.5后yum出错

    CentOS 7升级Python到3.5后,我跟以前CentOS 6一样,在/usr/bin/python创建了一个指向Python 3的软连接,然后将/usr/bin/yum的顶部的: !/usr/ ...

  6. python小结 1

    1.变量 记录状态 类型:数字,字符串,元组,列表,字典 可变不可变(内存地址不变的情况下,值能不能改变): 不可变:字符串,数字,元组 可变:列表,字典 访问顺序: 直接访问:数字 有序:字符串,列 ...

  7. PyCharm默认文件头部的设置

    PyCharm的设置 1.设置默认的文件头: 找到该路径并添加以下信息 File->settings->Editor->File and Code Templates->Pyt ...

  8. zeromq学习记录(三)使用ZMQ_PULL ZMQ_PUSH

    /************************************************************** 技术博客 http://www.cnblogs.com/itdef/   ...

  9. 【NOIP2013/Codevs3287】货车运输-最小生成树(大)-树上倍增

    https://www.luogu.org/problemnew/show/P1967 由题可知,我们走的路的边应尽可能大,所以通过kruscal建最大生成树的图,再树上倍增,注意可能有多棵树; #i ...

  10. 工具SQL

    1.数据库设计文档维护SQL SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, ...