Gulp压缩合并js/css文件,压缩图片,以及热更新教程

var gulp = require('gulp');
var concat = require('gulp-concat');//- 多个文件合并为一个;
var minifyCss = require('gulp-minify-css');//- 压缩CSS为一行;
var uglify = require('gulp-uglify');//压缩js
var imagemin=require('gulp-imagemin');//压缩图片
var livereload = require('gulp-livereload');//热更新
//压缩css
gulp.task('css', function() {
gulp.src(['./css/reset.css', './css/jquery.fullPage.css', './css/animation.css', './css/swiper-3.4.1.min.css', './css/main.css']) //- 需要处理的css文件,放到一个字符串数组里
.pipe(concat('main.css')) //- 合并后的文件名
.pipe(minifyCss()) //- 压缩处理成一行
.pipe(gulp.dest('./dest')); //- 输出文件本地;
});
//压缩js
gulp.task("js",function(){
// 把1.js和2.js合并压缩为main.js,输出到dest/js目录下
gulp.src(['./js/init.js', './js/jquery-3.1.1.min.js', './js/wxShare.js', './js/jquery.fullPage.js', './js/swiper-3.4.1.jquery.min.js', './js/area.js', './js/main.js'])
.pipe(concat('main.js'))
.pipe(uglify())
.pipe(gulp.dest('./dest'));
});
// 压缩图片
gulp.task('images', function () {
gulp.src('images/*.*')
.pipe(imagemin({
progressive: true
}))
.pipe(gulp.dest('dest/images'));
});
//热更新
gulp.task('hot', function() {
livereload.listen();
// app/**/*.* 的意思是 app 文件夹下的 任何文件夹 的 任何文件
gulp.watch('./**/*.*', function(event) {
livereload.changed(event.path);
});
});
gulp.task('default', ['css' ,'js' ,'images']);

Gulp压缩教程:(需全局安装gulp  $ npm install gulp -g)

1、cdm进入项目根目录 npm init(生成一个package.json,保存当前项目的依赖)
2、安装相关插件到项目目录内  npm install gulp gulp-concat gulp-minify-css gulp-uglify gulp-imagemin gulp-livereload --save-dev
3、将配置文件gulpfile.js内路径配置好

4、gulp即可压缩css、js、images。

Gulp热更新教程:
1、在项目目录内安装gulp-livereload插件
2、安装chrome插件:Enable LiveReload
3、全局安装http-server服务
4、在项目根目录下启动gulp hot  
5、继续在项目根目录下启动http-server服务
6、打开浏览器  输入localhost:8080   将Enable LiveReload小圆点点成实心即可实现热更新

gulpfile.js不断更新中...的更多相关文章

  1. js坑爹笔试题目汇总(持续更新中)

    把你的面试官问倒,你就是一个合格的面试者了,以下总结一些易错的js笔试题目,会持续更新中.欢迎关注 1,考察this var length = 10 function fn(){ alert(this ...

  2. 前端深入之js篇丨Array数组操作从入门到成神Up Up Up,持续更新中

    写在前面 随着前端深入的不断学习,发现数组这个数据结构在前端中有着相当大的存在感,由于我初学前端的时候并没有系统性的学习数组,所以我将通过这篇文章同你一起学习数组,希望我们能一起进步,学会熟练操作数组 ...

  3. js常见错误类型及chrome常见报错(更新中)

    ECMA-262 定义了下列 7 种错误类型: 1.Error 错误 2.EvalError 全局错误 eval函数没有正确执行 3.RangeError 范围错误 4.ReferenceError ...

  4. gulp的使用(二)之gulpfile.js文件的配置

    Gulpfile.js是什么文件: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她, ...

  5. gulpfile.js文档

    gulp watch 实现监听不仅需要package.json文档,还需要gulpfile.js文档.否则无法实现. 1.gulp的安装 1.1 首先必须先安装node.js.这个可以参考之前的博客& ...

  6. 通过Anuglar Material串串学客户端开发 - javascript编译和gulpfile.js

    Angular Material不仅仅有本身框架的源代码,还有在这个框架上实现的一个应用docs.更为强大的是,这个应用是真正的产品网站:就是它的官网.我有理由相信,这个网站是从源代码直接发布的,从网 ...

  7. D3.js使用过程中的常见问题(D3版本D3V4)

    目录 一.学习D3我必须要学习好SVG矢量图码? 二.如何理解D3给Dom节点绑定数据时的Update.Enter和Exit模式 三.D3绑定数据时用datum与data有什么不一样? 四.SVG图中 ...

  8. 【前端】Util.js-ES6实现的常用100多个javaScript简短函数封装合集(持续更新中)

    Util.js (持续更新中...) 项目地址: https://github.com/dragonir/Util.js 项目描述 Util.js 是对常用函数的封装,方便在实际项目中使用,主要内容包 ...

  9. AngularJS进阶(十二)AngularJS常用知识汇总(不断更新中....)

    AngularJS常用知识汇总(不断更新中....) 注:请点击此处进行充电! app.controller('editCtrl',['$http','$location','$rootScope', ...

随机推荐

  1. makefile怎么写?

    参考:https://blog.csdn.net/haoel/article/details/2886    https://blog.csdn.net/haoel/article/details/2 ...

  2. [Deep-Learning-with-Python]计算机视觉中的深度学习

    包括: 理解卷积神经网络 使用数据增强缓解过拟合 使用预训练卷积网络做特征提取 微调预训练网络模型 可视化卷积网络学习结果以及分类决策过程 介绍卷积神经网络,convnets,深度学习在计算机视觉方面 ...

  3. mysql提示Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist解决方法

    一次重启mysql发现无法启动成功,通过检查mysql日志发现问题并解决了问题. mysql启动失败的日志: [root@nn ~]# tail -n 20 /var/log/mysqld.log 1 ...

  4. C++学习 内存模型和名称空间

    1.单独编译 C++鼓励程序员将组件函数放在独立的文件中,如果只修改了一个文件,则可以只重新编译该文件,然后将它与其他文件的编译版本链接. 一般非常有用的组织程序的策略是把程序分成三部分: 头文件:包 ...

  5. [文章存档]Azure上部署的java app在向第三方服务传送中文时出现乱码

    https://docs.azure.cn/zh-cn/articles/azure-operations-guide/app-service-web/aog-app-service-web-java ...

  6. python-两个图片相似度算法

    # -*- coding: UTF-8 -*- """ 作者:zxj 版本:1.0 日期:19-3-24 """ import cv2 im ...

  7. hyperledger-fabirc1.2-ca-server的生产示例

    hyperledger-fabirc1.2-ca-server的生产示例,带TLS 在fabirc-samples/first-network中启动网络,其ca证书是利用crypto的工具生成的,但是 ...

  8. Linux DDos防御

    今天要说的就是一款能够自动屏蔽DDOS攻击者IP的软件:DDoS deflate. DDoS deflate介绍 DDoS deflate是一款免费的用来防御和减轻DDoS攻击的脚本.它通过netst ...

  9. PAT甲题题解-1017. Queueing at Bank (25)-模拟

    有n个客户和k个窗口,给出n个客户的到达时间和需要的时长有空闲的窗口就去办理,没有的话就需要等待,求客户的平均时长.如果在8点前来的,就需要等到8点.如果17点以后来的,则不会被服务,无需考虑. 按客 ...

  10. Python中的字典详解

    https://www.cnblogs.com/yjd_hycf_space/p/6880026.html