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

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

跟着例子敲的

var gulp = require('gulp');
var less = require('gulp-less');
var sass = require('gulp-sass');
var livereload = require('gulp-livereload');

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


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

//gulp.task('default',['one','two','three'],function(){ //执行默认任务
// console.log('Hello world') //hello world 会在任务one two three三个任务执行完之后才执行
//})
/*
gulp.src("a.less")
.pipe(gulp.dest('dist')); gulp.task('one',function(){ //gulp.task(name[, deps], fn)
console.log('one is done')
})
gulp.task('two',function(){ //gulp.task(name[, deps], fn)
console.log('two is done')
}) gulp.task('three',function(){ //gulp.task(name[, deps], fn)
console.log('three is done')
}) gulp.task('default',['first','second'],function(){ //执行默认任务
console.log('Hello world') //此时的输出顺序为second Hello world 最后first two任务虽然依赖于one任务,但并不会等到one任务中的异步操作完成后再执行
})
gulp.task('first',function(){
setTimeout(function(){ //这是一个异步任务
console.log('first')
},1000)
})
gulp.task('second',['first'],function(){
console.log('second')
}) gulp.task('default',['first','second'],function(){ //执行默认任务
console.log('Hello world') //此时的输出顺序为second Hello world 最后first two任务虽然依赖于one任务,但并不会等到one任务中的异步操作完成后再执行
})
gulp.task('first',function(cb){
setTimeout(function(){ //这是一个异步任务
console.log('first')
cb();//执行回调,表示这个异步任务已经完成
},1000)
})
//这时second任务会在first任务中的异步操作完成后再执行
gulp.task('second',['first'],function(){
console.log('second')
}) //gulp watch监听
gulp.task('default',function(){ //执行默认任务
gulp.src("a.less")
.pipe(gulp.dest('dist'));
})
gulp.watch('*.less',function(event){
console.log(event.type)
console.log(event.path)
})
*/
//gulp.task('html', function () {
// gulp.src('index.html')
// .pipe(livereload())
//}); gulp.task('less', function () { //less方法
gulp.src('less/*.less')
.pipe(less())
.pipe(gulp.dest('dist/css'))
.pipe(livereload())
});
/*
gulp.task('sass', function () { //sass方法
gulp.src('sass/*.sass')
.pipe(sass())
.pipe(gulp.dest('dist/sass'))
});
*/
gulp.task('watch',function(file){ //watch方法监听less编译
livereload.listen(); //要在这里调用listen()方法
gulp.watch('less/*.less', ['less']); //监听的文件,方法
});
/*总结
* 1 gulp.src引入文件
* 2 .pipe()转成流的方式
* 3 gulp.dest 输出
* 4 gulp.task 任务
* 5 gulp.watch 监听
*/

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. git tag的用法

    我们常常在代码封板时,使用git 创建一个tag ,这样一个不可修改的历史代码版本就像被我们封存起来一样,不论是运维发布拉取,或者以后的代码版本管理,都是十分方便的 git的tag功能 git 下打标 ...

  2. cast

    https://blog.csdn.net/seabeam/article/details/47841539 在UVM中经常可以看到$cast的身影,这是SV的build-in task之一,当然它还 ...

  3. 求树的重心 poj 1655

    题目链接:https://vjudge.net/problem/POJ-1655 这个就是找树的重心,树的重心就是树里面找一个点,使得以这个点为树根的所有的子树中最大的子树节点数最小.题目应该讲的比较 ...

  4. 导出word文档 通过DocX组件

    根据DocX官方描述如下: In the application development process, it uses COM libraries and requires MS Word or ...

  5. Swift 循环引用

    - 循环引用的weak用法 // ** {} 中所有 self 都是弱引用,注意需要解包        // 1.类似于 OC 中的 __weak typeof(self) weakSelf = se ...

  6. 查看linux中tcp连接数

    一.查看哪些IP连接本机 netstat -an 二.查看TCP连接数 1)统计80端口连接数netstat -nat|grep -i "80"|wc -l 2)统计httpd协议 ...

  7. 【转】C#集合类型大盘点

    C#集体类型( Collections in C#) 集合是.NET FCL(Framework Class Library)中很重要的一部分,也是我们开发当中最常用到的功能之一,几乎是无处不在.俗话 ...

  8. iPhone屏幕分辨率和适配规则 图片文字适配

    基本概念 - 逻辑分辨率 pt (point),物理分辨率 px (pixel) - 缩放因子 scale 或者 dpr, scale ≈ px / pt - 缩放采样 例如 iPhone 6 Plu ...

  9. linux之用户密码破解的操作

    一 无引导介质救援模式破解root用户密码 1 启动虚拟用户,在GRUB启动画面停留的那段时间,用上下键选择启动项. 2 用‘e’键进入你选择的启动项 ,然后用上下键将光标移动到“linux16... ...

  10. ABP框架系列之二十九:(Hangfire-Integration-延迟集成)

    Introduction Hangfire is a compherensive background job manager. You can integrate ASP.NET Boilerpla ...