gulp学习指南之CSS合并、压缩与MD5命名及路径替换

1.引入插件 

var gulp = require(‘gulp‘),
  //  uglify = require(‘gulp-uglify‘),
    concat = require(‘gulp-concat‘),
    minifycss = require(‘gulp-minify-css‘),
     rev = require(‘gulp-rev‘),
    revcollector = require(‘gulp-rev-collector‘);

控制台输入

npm install gulp gulp-concat gulp-minify-css gulp-rev gulp-rev-collector --save-dev

2.在gulpfile.js里写代码

gulp.task(‘concat‘,function(){
    gulp.src(‘XingboWeb/scenemall/public/static/css/reset.css‘)  //要压缩的文件
        .pipe(minifycss(‘reset.css‘))       //压缩css
        .pipe(rev())                        //文件名加md5后缀
        .pipe(gulp.dest(‘dist/css‘))     //
        .pipe(rev.manifest())         //rev-mainfest.json文件,里面是压缩文件的信息
        .pipe(gulp.dest(‘dist/rev‘));
});

gulp.task(‘rev‘,function(){
    gulp.src([‘dist/rev/*.json‘,‘XingboWeb/scenemall/app/views/home/detail.phtml‘])   //读取压缩文件信息,和要替换目录的文件
        .pipe(revcollector({        //执行替换
            replaceReved:true,
            dirReplacements:{
                ‘css‘:‘dist/css‘
            }
        }))
        .pipe(gulp.dest(‘XingboWeb/scenemall/app/views/home/‘))
    //    .pipe(gulp.dest(‘dist/html‘))
})

注意:minifycss压缩文件名一定要替换目录里的文件名一致,否则替换不成功,例如文件名里reset.css,但是压缩的文件名是reset.min.css,这样的是不能替换成功的

3.之后在控制台运行gulp,就可以替换成功了

时间: 2024-10-12 13:09:05

gulp学习指南之CSS合并、压缩与MD5命名及路径替换的相关文章

Gulp学习指南之CSS合并、压缩与MD5命名及路径替换(转载)

本文转载自: Gulp学习指南之CSS合并.压缩与MD5命名及路径替换

gulp css html image js 合并压缩

安装node.js  npm  以及安装gulp等方法我就不在这里赘述了. 接下里我主要介绍的是Gulpfile文件里面的配置该如何书写. var gulp = require('gulp');//引入gulp组件 // 引入组件//在引入这些组件前你需要在你的项目里进行安装.举个栗子:组件中间用空格隔开.一定要先切换到你项目所在的目录 //npm install gulp-jshint gulp-sass gulp-concat gulp-uglify gulp-rename --save-d

使用gulp 合并压缩打包,实时监控文件,实现本地server

今天不讲webpack,就说说gulp是怎么进行压缩合并打包 首先你的安装gulp : npm install gulp -g --save-dev 然后最基本的你因该知道gulp 的四个方法, gulp.src:读取文件 gulp.pipe:将文件流输入到指定的文件目录 gulp.task:建立gulp任务,例如合并,压缩,清除文件, gulp.watch:用于监听文件的变化 关于其他的嘛,那就是gulp 之所以那么强大,原因就是他有很多插件,我们要完成一些功能就必须要学会使用一些插件 1)在

grunt 合并压缩js和css文件(二)

具体node及文件配置请看: grunt 安装使用(一) 要压缩的文件 --src/ ajax.js assets.js touch.js zepto.js 目录结构: dist/ node_modules/ src/ Gruntfile.js package.json package.json是依赖库文件 Gruntfile.js是执行步骤程序 一.js合并压缩 第一次需要先安装grunt.执行 npm install -g grunt-cli 进行安装.如果已经安装,可以忽略. 1.pack

使用Ant和YUICompressor链接合并压缩你的JS和CSS代码

JS代码和CSS代码在上线前要压缩大家应该都是知道的了.记得之前做项目的时候,最后要交差的时候是找了个网站,将JS代码的文件一个一个地复制,粘贴,复制,粘贴. 当时就在想:TMD有没有好一点的方法,劳资不想老是用Ctrl大法.啊啊啊啊啊啊啊啊阿~.最最坑爹的是,有时候将代码复制粘贴的时候手一抖可能就删了点什么东西,手一快又保存了,反正各种坑爹.坑到没朋友. 但是呢,不压缩也不是是吧? 在写JS代码渐渐多了起来的时候就发现手动压缩根本不是长远的方法.而且JS的代码也开始分块,分功能,分文件写了,尽

使用grunt合并压缩js、css文件

需要了解的知识: 1.nodejs的安装与命令行使用 2.nodejs安装应用 3.grunt的初步了解 本文已假定读者已经熟悉以上知识. 好,我们继续: 任务1:将src目录下的所有zepto及插件合并,并压缩. --src/ ajax.js assets.js callbacks.js data.js deferred.js detect.js event.js form.js fx.js fx_methods.js gesture.js ie.js ios3.js selector.js

CSS Flexbox 学习指南、工具与框架

Flexbox 是一种更有效的布局方式,它能更好的分配容器空间,并控制项目的对齐.虽然,掌握它的理论有些复杂,但幸运的是,我们可以借助开放的网络来学习并逐步掌握它. 在本文中,我们整合了一些最佳的 Flexbox 学习资源,它们可以帮助你了解Flexbox 的方方面面.涉及什么是 Flexbox,以及如何有效地使用它. Flexbox 学习指南 CSS 之 Flexbox 参考(作者:Sara Soueidan) CSS 之 Flexbox 参考是学习 Flexbox 基础知识的系列文章.在文章

介绍一种基于gulp对seajs的模块做合并压缩的方式

之前的项目一直采用grunt来构建,然后用requirejs做模块化,requirejs官方有提供grunt的插件来做压缩合并.现在的项目切到了gulp,模块化用起了seajs,自然而然地也想到了模块合并压缩的问题.然后一开始在解决这个问题的时候,并不是很顺利,在npm上并没有那种特别流行的专门用来做seajs合并压缩的gulp插件,虽然在seajs的github上也看了不少的issue,但是大多数都是只能将所有的模块文件合并成一个总的文件,这对于单页面的应用来说肯定没有问题,但是对于多页面的应

vs合并压缩css,js插件——Bundler & Minifier

之前做了一个大转盘的抽奖活动,因为比较火,部分用户反馈看不到页面的情况,我怀疑js加载请求过慢导致,所以今天针对之前的一个页面进行调试优化. 首先想到的是对页面的js和css进行压缩优化,百度了下vs集成的插件,貌似没有很好的支持,自己在vs里找了一个非常满意的插件——Bundler & Minifier 这个vs插件下载地址:点我 插件功能说明: 1.合并多个css,js,html文件为一个单独的文件 2.保存源文件自动重新组合. 3.压缩css,js,html文件 等等...(其他我没用到,