文档章节

gulp 的 js 压缩插件 —— gulp-lzmajs

andot
 andot
发布于 2015/08/07 11:34
字数 410
阅读 270
收藏 0
点赞 0
评论 1

简介

用过 gulp 的用户可能都知道 gulp-concat 和 gulp-uglify 这两个插件,一个用于合并文件,另一个用于对 js 进行语法压缩。虽然通过文件合并和语法压缩可以有效的减小 js 文件的体积,但是对于比较大的 js 文件仍然还有很大的空间可以继续进行压缩。为了达到这个目的,我做了这个 gulp-lzmajs 插件,并在实际应用中将仅使用 gulp-concat 和 gulp-uglify 压缩之后有 60 KB左右的 js 文件通过 gulp-lzmajs 进一步压缩到只有 20KB 左右。对于更大的文件,当然效果会更好。

安装

安装方法非常简单,可以直接使用 npm 方式添加到你的开发环境中:

npm install --save-dev gulp-lzmajs

使用

var gulp   = require('gulp'),
    concat = require('gulp-concat'),
    uglify = require('gulp-uglify'),
    lzmajs = require('gulp-lzmajs');

gulp.task('compress', function() {
  return gulp.src('lib/*.js')
             .pipe(concat('all.min.js'))
             .pipe(uglify())
             .pipe(lzmajs())
             .pipe(gulp.dest('dist'));
});

实际案例

hprose-html5

© 著作权归作者所有

共有 人打赏支持
andot

andot

粉丝 125
博文 8
码字总数 16729
作品 17
潍坊
程序员
加载中

评论(1)

一天掌握构建化工具Grunt、gulp、webpack(下)

1、gulp篇 中文主页: http://www.gulpjs.com.cn/ 上面那一篇博客我们已经讲述了如何创建工程以及安装所有的环境和准备,如果没有看到的话,链接在下面 https://my.oschina.net/mdxlcj/blog/1...

木九天 ⋅ 04/27 ⋅ 0

nodeJS压缩代码、jade

一、jade: 一、终端命令(在存放jade的文件夹下) 1、全局安装jade: npm install jade -g 2、不压缩html: jade -P test.jade 3、监听jade文件: jade -P -w test.jade 会在 .jade 文件下生成 ...

曹国莉 ⋅ 06/05 ⋅ 0

Gulp和Webpack工具的区别

引用知乎的回答:https://www.zhihu.com/question/37020798 怎么解释呢?因为 Gulp 和 browserify / webpack 不是一回事 Gulp应该和Grunt比较,他们的区别我就不说了,说说用处吧。Gulp / Gr...

easonjim ⋅ 2016/12/24 ⋅ 0

huangdf/seezoon-framework-all

项目介绍 基于spring,mybatis,shiro面向接口开发的的一套后台管理系统,方便快速开发;采用常用的技术栈,降低学习成本,项目完全前后端分离,后端定义统一的接口格式,统一参数校验,统一权...

huangdf ⋅ 04/20 ⋅ 0

gulp前端自动化构建工具使用

(1)新建项目目录gulp_web (2)项目目录下建目录src里面存放需要进行gulp处理的文件目录及文件 (3)gulpfile.js文件内容为声明需要打包应用的gulp组件及打包文件路径和打包任务,比如:...

火腿骑士 ⋅ 2016/11/20 ⋅ 0

使用Glup.JS优化JS、CSS、图片,压缩合并

下面进入正题,简单说一下如何安装,使用gulp 1. 安装Gulp gulp的任务处理机制是,将来源档案当作输入,通过Node.js的Stream操作流,并将流导向gulp的任务处理插件plugins,处理完成后将结果...

Billydotzhang ⋅ 2016/06/01 ⋅ 0

gulp的4个API 让你成为gulp专家

gulp 本身能做的事情非常少,主要是通过插件来提供各种功能,gulp本身只提供了4个非常简洁的API, 掌握这4个API你就基本掌握了gulp的全部。 一、gulp.task gulp 是基于task的方式来运行 定义 ...

JamesView ⋅ 04/19 ⋅ 0

gulp常用插件大全

编译 gulp-sass - 通过 libsass将Sass编译成 CSS gulp-ruby-sass - 通过 Ruby Sass将Sass编译成CSS gulp-compass - 通过 Ruby Sass和CompassSass编译成CSS gulp-less - Less编译成 CSS. gul......

bug_killer ⋅ 2017/12/22 ⋅ 0

从零开始到发布上线,如何自定义一个webpack loader

关于 前两天在使用webpack搭建移动端web的时候,需要使用到动态修改html的font-size。考虑到只有几行代码,我想把镶嵌到中,同时我希望能够随时修改它的源码,并且最后输出到html中是压缩过后的...

林楠 ⋅ 05/16 ⋅ 0

使用webpack前端重构感受

重构起点 在一个老项目中用webpack对前端代码进行重构,重构的重心在于JS部分。这个老项目呢,有2年以上的历史了。 JS部分从底数起: Mootools - core/more 1.5.0 jQuery - 1.11.1 underscor...

曾建凯 ⋅ 2016/05/18 ⋅ 2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Day 17 vim简介与一般模式介绍

vim简介 vi和Vim的最大区别就是编辑一个文件时vi不会显示颜色,而Vim会显示颜色。显示颜色更便于用户编辑,凄然功能没有太大的区别 使用 yum install -y vim-enhanced 安装 vim的三种常用模式...

杉下 ⋅ 42分钟前 ⋅ 0

【每天一个JQuery特效】根据可见状态确定是否显示或隐藏元素(3)

效果图示: 主要代码: <!DOCTYPE html><html><head><meta charset="UTF-8"><title>根据可见状态确定 是否显示或隐藏元素</title><script src="js/jquery-3.3.1.min.js" ty......

Rhymo-Wu ⋅ 51分钟前 ⋅ 0

OSChina 周四乱弹 —— 初中我身体就已经垮了,不知道为什么

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @加油东溪少年 :下完这场雨 后弦 《下完这场雨》- 后弦 手机党少年们想听歌,请使劲儿戳(这里) @马丁的代码 :买了日本 日本果然赢了 翻了...

小小编辑 ⋅ 今天 ⋅ 10

浅谈springboot Web模式下的线程安全问题

我们在@RestController下,一般都是@AutoWired一些Service,由于这些Service都是单例,所以并不存在线程安全问题。 由于Controller本身是单例模式 (非线程安全的), 这意味着每个request过来,...

算法之名 ⋅ 今天 ⋅ 0

知乎Java数据结构

作者:匿名用户 链接:https://www.zhihu.com/question/35947829/answer/66113038 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 感觉知乎上嘲讽题主简...

颖伙虫 ⋅ 今天 ⋅ 0

Confluence 6 恢复一个站点有关使用站点导出为备份的说明

推荐使用生产备份策略。我们推荐你针对你的生产环境中使用的 Confluence 参考 Production Backup Strategy 页面中的内容进行备份和恢复(这个需要你备份你的数据库和 home 目录)。XML 导出备...

honeymose ⋅ 今天 ⋅ 0

JavaScript零基础入门——(九)JavaScript的函数

JavaScript零基础入门——(九)JavaScript的函数 欢迎回到我们的JavaScript零基础入门,上一节课我们了解了有关JS中数组的相关知识点,不知道大家有没有自己去敲一敲,消化一下?这一节课,...

JandenMa ⋅ 今天 ⋅ 0

火狐浏览器各版本下载及插件httprequest

各版本下载地址:http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/ httprequest插件截至57版本可用

xiaoge2016 ⋅ 今天 ⋅ 0

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 今天 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部