类似于grunt,都是基于Node.js的前端构建工具。不过gulp压缩效率更高。

工具/原料

  • nodejs/npm

方法/步骤

  1. 首先要确保pc上装有node,然后在global环境和项目文件中都install gulp

    npm install gulp -g   (global环境)

    npm install gulp --save-dev (项目环境)

     
  2.  

    在项目中install需要的gulp插件,一般只压缩的话需要

    npm install gulp-minify-css gulp-concat gulp-uglify gulp-rename del --save-dev

    更多插件可以在这个链接中找到 http://gratimax.net/search-gulp-plugins/

    注:gulp-minify-css(css压缩)、 gulp-concat(文件合并)、 gulp-uglify(js压缩)、 gulp-rename(重命名文件)

  3.  

    在项目的根目录新建gulpfile.js,require需要的module

    1. var gulp = require('gulp'),
    2.  
    3. minifycss = require('gulp-minify-css'),
    4.  
    5. concat = require('gulp-concat'),
    6.  
    7. uglify = require('gulp-uglify'),
    8.  
    9. rename = require('gulp-rename'),
    10.  
    11. del = require('del');
  4.  压缩css
    1. gulp.task('minifycss', function() {
    2.  
    3. return gulp.src('src/*.css') //压缩的文件
    4.  
    5. .pipe(gulp.dest('minified/css')) //输出文件夹
    6.  
    7. .pipe(minifycss()); //执行压缩
    8.  
    9. });
  5.  压缩js
    1. gulp.task('minifyjs', function() {
    2.  
    3. return gulp.src('src/*.js')
    4.  
    5. .pipe(concat('main.js')) //合并所有js到main.js
    6.  
    7. .pipe(gulp.dest('minified/js')) //输出main.js到文件夹
    8.  
    9. .pipe(rename({suffix: '.min'})) //rename压缩后的文件名
    10.  
    11. .pipe(uglify()) //压缩
    12.  
    13. .pipe(gulp.dest('minified/js')); //输出
    14.  
    15. });
  6.  执行压缩前,先删除文件夹里的内容
    1. gulp.task('clean', function(cb) {
    2.  
    3. del(['minified/css', 'minified/js'], cb)
    4.  
    5. });
  7.  默认命令,在cmd中输入gulp后,执行的就是这个命令
    1. gulp.task('default', ['clean'], function() {
    2.  
    3. gulp.start('minifycss', 'minifyjs');
    4.  
    5. });
  8.  然后只要cmd中执行,gulp即可

gulp入门-压缩js/css文件(windows)的更多相关文章

  1. MVC打包压缩JS&CSS文件调试时过滤了一些文件

    BundleTable.这个确实是比较好用,打包并压缩了CSS,使之加载时减少流量. 但是在调试的时候会疑问为何有很多JS,CSS文件无法打包,其实是因为调试时VS自动过滤了如下文件:   后台跟踪了 ...

  2. 开箱即用 - Grunt合并和压缩 js,css 文件

    js,css 文件合并与压缩 Grunt 是前端自动化构建工具,类似webpack. 它究竟有多强悍,请看它的 介绍. 这里只演示如何用它的皮毛功能:文件合并与压缩. 首先说下js,css 合并与压缩 ...

  3. IIS7.5打开GZip压缩,同时启用GZip压缩JS/CSS文件的设置方法[bubuko.com]

    IIS7.5或者IIS7.0开启GZip压缩方法:打开IIS,在右侧点击某个网站,在功能视图中的“IIS”区域,双击进入“压缩”,如图下图: 分别勾选“启用动态内容压缩”和“启用静态内容压缩”.这样最 ...

  4. Web网站配置Gzip,压缩js css文件

    启用apache的gzip 找到httpd.conf,打开文件找到对mod_deflate的注释 #LoadModule deflate_module modules/mod_deflate.so 去 ...

  5. gulp实现打包js/css/img/html文件,并对js/css/img文件加上版本号

    参考打包教程: http://www.cnblogs.com/tugenhua0707/p/4069769.html http://www.cnblogs.com/tugenhua0707/p/498 ...

  6. ASP.NET MVC 4 Optimization的JS/CSS文件动态合并及压缩

    JS/CSS文件的打包合并(Bundling)及压缩(Minification)是指将多个JS或CSS文件打包合并成一个文件,并在网站发布之后进行压缩,从而减少HTTP请求次数,提高网络加载速度和页面 ...

  7. JS&CSS文件请求合并及压缩处理研究(五)

    接上篇.在我们最终调用 @Html.RenderResFile(ResourceType.Script) 或者 @Html.RenderResFile(ResourceType.StyleSheet) ...

  8. 使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度

    使用PHP和GZip压缩网站JS/CSS文件加速网站访问速度 一些泛WEB 2.0网站为了追求用户体验,可能会大量使用CSS和JS文件.这就导致在服务器带宽一定的情况下,多用户并发访问速度变慢.如何加 ...

  9. 前端js,css文件合并三种方式,bat命令

    前端js,css文件合并三种方式,bat命令 前端js文件该如何合并三个方式如下:1. 一个大文件,所有js合并成一个大文件,所有页面都引用它.2. 各个页面大文件,各自页面合并生成自己所需js的大文 ...

随机推荐

  1. html5 的 webScoket 和 C# 建立Socket连接

    最近使用的web项目中,需要服务器直接触发前端显示效果. 所以研究了一下websocket: 名词解释: WebSocketWebSocket协议是一种双向通信协议,它建立在TCP之上,同http一样 ...

  2. iterator & iterable

    一. java.lang.Iterable java.util.Iterator Iterator是迭代器类,而Iterable是接口. 好多类都实现了Iterable接口,这样对象就可以调用iter ...

  3. mysql 排序字段与索引有关系吗?

    mysql 排序字段与索引有关系吗?答案与否需要你explain一下你的sql脚本 另外记住:date_add()方法会影响Index_modify_time索引(即:时间字段索引)  一般遇到这样的 ...

  4. [LeetCode] Largest Number 排序

    Given a list of non negative integers, arrange them such that they form the largest number. For exam ...

  5. 通过 jsp+ajax+servlet+webservice 远程访问天气预报服务

    通过 jsp+ajax+servlet+webservice 远程访问天气预报服务   - webservice 客户端访问的方式     1. java代码来访问     2. ajax 方式异步加 ...

  6. python操作word、ppt的详解

    python使用win32com的心得   python可以使用一个第三方库叫做win32com达到操作com的目的, 我是安装了ActivePython的第三方库,从官网下载了安装包,该第三方库几乎 ...

  7. C#图解教程学习笔记——类相关的概念

    一.一些基本概念1. 字段:隶属于类的变量,即类的成员变量.2. 方法:隶属于类的函数,即类的成员函数.3. 实例成员:类的每个实例拥有自己的各个类成员的副本,这些成员称为实例成员. 改变一个实例字段 ...

  8. Codeforces Gym101522 A. Ambiguous Dates (La Salle-Pui Ching Programming Challenge 培正喇沙編程挑戰賽 2017)

    A. Ambiguous Dates There are two popular formats for representing a date: day/month/year or month/da ...

  9. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛【待补】

    [链接]:https://www.nowcoder.com/acm/contest/90#question

  10. TopCoder SRM 682 Div1 Problem 450 SuccessfulMerger (环套树 + 分类讨论)

    题意  给定一个$n$个点$n$条边的无向图,现在要把这个图进行若干次操作,并选择一个点作为首都. 要求除首都外的任意两个点$u$, $v$,从$u$走到$v$必须经过这个首都. 操作为合并两个相邻的 ...