gulp教程之压缩合并css,js

package.json
如果你熟悉 npm 则可以利用 package.json 保存所有 npm install --save-dev gulp-xxx 模块依赖和模块版本。
在命令行输入

npm init

会依次要求补全项目信息,不清楚的可以直接回车跳过

安装依赖
安装 gulp 到项目(防止全局 gulp 升级后与此项目 gulpfile.js 代码不兼容)

nup install gulp --save-dev

说明:--save-dev 保存配置信息至 package.json 的 devDependencies 节点。
此时打开 package.json 会发现多了如下代码

"devDependencies": {
    "gulp": "^3.8.11"
}

声明此项目的开发依赖 gulp
接着安装其他依赖:项目中需要用的都需要安装,这里我们可以统一安装,之间用空格隔开
npm gulp-minify-css gulp-concat gulp-uglify gulp-rename gulp-util --save-dev
此时packjson会持续更新,将我们上面安装依赖统一写入packjson中。
配置 JS 任务
此时新建gulpfile.js文件
1.首先引入依赖

var gulp = require(‘gulp‘),
    minifycss = require(‘gulp-minify-css‘),
    concat = require(‘gulp-concat‘),
    uglify = require(‘gulp-uglify‘),
    rename = require(‘gulp-rename‘),
    gutil = require(‘gulp-util‘);

2.添加执行任务
//压缩css

gulp.task(‘minify_css‘, function () {
    var cssSrc = [‘./src/css/*.css‘];
    return gulp.src(cssSrc) //压缩的文件
        .pipe(concat(‘all.css‘)) //合并所有css到all.css
        .pipe(gulp.dest(‘./dist/css‘)) //输出文件夹
        .pipe(rename({suffix: ‘.min‘}))
        .pipe(minifycss())
        .pipe(gulp.dest(‘./dist/css‘)); //执行压缩
});        

//压缩js

gulp.task(‘minify_js‘, function() {
    var jsSrc = [‘./src/js/*.js‘,‘!./src/js/*.src.js‘];
    return gulp.src(jsSrc)
        .pipe(concat(‘all.js‘)) //合并所有js到all.js
        .pipe(gulp.dest(‘./dist/js‘)) //输出all.js到文件夹
        .pipe(rename({suffix: ‘.min‘})) //rename压缩后的文件名
        .pipe(uglify()) //压缩
        .pipe(gulp.dest(‘./dist/js‘)); //输出
});

3.默认任务
//默认任务

gulp.task(‘default‘, function(){
    gulp.run(‘minify_css‘, ‘minify_js‘);
});

执行任务
命令行下输入:

gulp 
最终形成目录结构如下

src是我们原始文件,dist里就是我们已经压缩成功之后生成的文件了

时间: 2024-10-06 17:06:24

gulp教程之压缩合并css,js的相关文章

gulp完成javascript压缩合并,css压缩

最近需要对项目进行优化,主要是对js的压缩合并和css文件的压缩,查找相关资料之后发现gulp可以实现相关的功能,特此分享一下使用心得. 1.安装gulp gulp是基于Node.js的前端构建工具.所以首先需要安装nodejs,安装nodejs. 完成nodejs安装之后,需要使用npm安装gulp. 先安装全局gulp npm install -g gulp 然后在项目根目录下安装本地gulp. 此时项目根目录下会多出下面这个文件夹 node_modules 好的,现在gulp已经安装完成了

折腾一两天,终于学会使用grunt压缩合并混淆JS脚本,小激动,特意记录一下+spm一点意外收获

很长时间没有更新博客了,实在是太忙啦...0.0 ,以下的东西纯粹是记录,不是我原创,放到收藏夹还担心不够,这个以后常用,想来想去,还是放到这里吧,,丢不了..最后一句废话,网上搜集也好原创也罢,能解决问题不糊弄人才是真道理! 反正我的问题解决啦!!!哈哈哈!! 安装grunt 原文:www.bluesdream.com/blog/Windows-installs-the-grunt-and-instructions.html 怕这个网址打不开,记录下: 安装Grunt:如果你之前安装过老的0.

grunt压缩合并js

[grunt整合版]30分钟学会使用grunt打包前端代码 grunt 准备阶段 1.nodeJs环境 2.安装grunt 实例学习:打包zepto ① package.json ② Gruntfile.js 认识Gruntdile与package.json package.json Gruntfile 合并文件 合并requireJS管理的文件 配置任务/grunt.initConfig grunt插件 grunt-contrib-unglify grunt-contrib-concat gr

HTML+CSS+JS(面试题)

1. 你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? IE: trident内核 Firefox:gecko内核 Safari:webkit内核 Opera:以前是presto内核,Opera现已改用Google Chrome的Blink内核 Chrome:Blink(基于webkit,Google与Opera Software共同开发) 2.你能描述一下渐进增强和优雅降级之间的不同吗? 渐进增强 progressive enhancement:针对低版本浏览器进行构建页面,保证最基

gulp之css,js压缩合并加密替换

为了防止客户端的静态资源缓存,我们需要每次更新css或js的时候,通过md5或时间戳等方式重新命名静态资源.让客户端可以重新请求资源,而不是从缓存里取.然后html模板里的src也要做相应的修改.当然,这里还有个附加的需要就是,静态资源需要自行优化(压缩合并). 下面是我gulpfile.js的代码: var gulp = require('gulp'), //基础库 clean = require('gulp-clean'), //清空文件夹 minify = require('gulp-mi

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

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

Grunt的配置及使用(压缩合并js/css)

Grunt的配置及使用(压缩合并js/css) 安装 前提是你已经安装了nodejs和npm. 你能够在 nodejs.org 下载安装包安装.也能够通过包管理器(比方在 Mac 上用 homebrew,同一时候推荐在 Mac 上用 homebrew). 安装grunt CLI npm install -g grunt-cli 依照官方的说法.grunt-cli仅仅是为了在同一台机器上安装不同的grunt版本号,那么咱们先不去管他. 在项目中使用grunt 首先须要往项目里加入两个文件:pack

gulp入坑系列(2)——初试JS代码合并与压缩

在上一篇里成功安装了gulp到项目中,现在来测试一下gulp的合并与压缩功能 gulp入坑系列(1)--安装gulp(传送门):http://www.cnblogs.com/YuuyaRin/p/6159809.html 在之前建立的项目中写入,在根目录新建js文件夹,并在文件夹中新建两个js文件,代码如下: index.js: var index={}; index={ test:function(argument){ console.log('test'); } } index.test()

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

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