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. 【php增删改查实例】第四节 -自己 DIY 一个数据库管理工具

    本节介绍如何自己DIY一个数据库管理工具,可以在页面输入sql 进行简单的增删改查操作. 首先,找到xampp的安装目录,打开htdocs: 新建一个php文件,名称为 mysqladmin.php ...

  2. tkinter 对键盘和鼠标事件的处理

    鼠标事件 <ButtonPress-n> <Button-n> <n> 鼠标按钮n被按下,n为1左键,2中键,3右键 <ButtonRelease-n> ...

  3. C# Language Specification 5.0 (翻译)第四章 类型

    C# 语言的类型分为两大类:值类型(value type)和引用类型(reference type),而它们又都同时具有至少一个类型形参的泛型类型(generic type).类型形参(type pa ...

  4. 我是SPI,我让框架更加优雅了!

    文章首发于[陈树义的博客],点击跳转到原文<我是 SPI,我让框架更加优雅了!> 自从上次小黑进入公司的架构组之后,小黑就承担起整个公司底层框架的开发工作.就在刚刚,小黑又接到一个任务:做 ...

  5. NodeJS旅程 : module 不可忽略的重点

    modules 模块的简介 Module 是Node.js中最重要的一个部分也是进行深度开发前的必修课.掌握Module才能真正理解NodeJS的精髓,你会发现从思路上会有极大的扩展.  学会写mod ...

  6. DelayQueue 订单限时支付实例

    1.订单实体 package com.zy.entity; import java.util.Date; import java.util.concurrent.Delayed; import jav ...

  7. docker 部署Spring Boot:Docker化Spring Boot应用程序

    第一章 1.创建项目存放目录 mkdir /root/sproot -p 2.准备好Spring Boot应用程序 jar 包 testrest.jar 第二章 1. 安装docker 在所有节点执行 ...

  8. GitHub 新手教程 五,Git GUI 新手教程(2),Clone Existing Repository 克隆代码库

    1,注意: 网上大部分教程都是从“Create New Repository”讲起,这其实给我们新手埋了很大的一个坑.按照类似的教程,仅做到一半,各种错误窗口就会弹出来了,像什么:“非同一代码库”.“ ...

  9. [算法总结] 6 道题搞定 BAT 面试——堆栈和队列

    本文首发于我的个人博客:尾尾部落 0. 基础概念 栈:后进先出(LIFO) 队列:先进先出(FIFO) 1. 栈的 java 实现 import java.util.Arrays; public cl ...

  10. B1041. 考试座位号(15)

    这题比较简单,没有调试,一次通过,虽然简单,不过也有借鉴意义. #include<bits/stdc++.h> using namespace std; const int N=1005; ...