当前位置:首页 > 日记 > 正文

JS中使用gulp实现压缩文件及浏览器热加载功能

JS中使用gulp实现压缩文件及浏览器热加载功能

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

一.安装gulp

  首先,你要安装过nodejs,如果没有安装过的同学请自行下载。  先再命令行里输入   npm install gulp -g   下载gulp

二.创建gulp项目

  创建一个你需要项目文件夹,然后在根目录输入  npm init  (npm init命令会为你创建一个package.json文件,这个文件保存着这个项目相关信息。比如你用到的各种依赖)

三.使用npm install 安装各种依赖

  例:

npm install browser-sync--save-dev

  这里总共用到了这些依赖,请自行下载   具体各自都有什么用 后面会具体介绍。

四.编写gulpfile.js

  首先,声明这些依赖

  然后我们就要开始最重要的工作了,配置这些依赖

  1.配置压缩css

 

  2.配置压缩js

  3.配置压缩img

  4.配置html,这里没有进行压缩,感觉没有压缩的必要 (纯属见仁见智)

  5.配置清楚文件,因为每次打包都会生成新文件  所以在这之前要把之前的文件给清除掉

  6.配置浏览器热加载

  7.配置打包  

  这里的runSequence是指能同时执行多个命令

  8.设置gulp启动时执行哪些配置

  最后放上全部代码 供大家参考

var gulp = require('gulp');var sass = require('gulp-sass');var browserSync = require('browser-sync');var uglify = require('gulp-uglify');var imagemin = require('gulp-imagemin');var minifyCSS = require('gulp-minify-css');var cache = require('gulp-cache');var del = require('del');var runSequence = require('run-sequence');var minifyHtml= require("gulp-minify-html");gulp.task('sass', function(){  //打包sass return gulp.src('app/scss/**/*.scss')  .pipe(sass()) // Converts Sass to CSS with gulp-sass  .pipe(gulp.dest('app/css'))  .pipe(browserSync.reload({   stream: true  }))});gulp.task('js',function() {  gulp.src('app/**/*.js')  .pipe(uglify())//压缩  .pipe(gulp.dest('dist'));});gulp.task('css', function () {  gulp.src('app/css/*.css')  .pipe(minifyCSS())  .pipe(gulp.dest('dist/css'))})gulp.task('minify-html',function() {   gulp.src('app/**/*.html')//要压缩的html文件   .pipe(gulp.dest('dist'));});gulp.task('images', function(){ return gulp.src('app/images/**/*.+(png|jpg|jpeg|gif|svg)') // Caching images that ran through imagemin .pipe(cache(imagemin({   interlaced: true  }))) .pipe(gulp.dest('dist/images'))});gulp.task('clean', function(callback) { del('dist'); return cache.clearAll(callback);});gulp.task('watch',['browserSync', 'sass'],function(){  //我们可以在watch任务之前告知Gulp,先把browserSync和Sass任务执行了再说。 gulp.watch('app/scss/**/*.scss', ['sass']); gulp.watch('app/*.html', browserSync.reload); gulp.watch('app/js/**/*.js', browserSync.reload); // Other watchers});gulp.task('browserSync', function() { //浏览器热加载 browserSync({  server: {   baseDir: 'app'  }, })});gulp.task('build', function (callback) { runSequence('clean',['minify-html','js','images','css'],callback)});gulp.task('default', function (callback) { runSequence(['sass','browserSync', 'watch'],  callback )});

以上所述是小编给大家介绍的JS中使用gulp实现压缩文件及浏览器热加载功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

相关文章

es6的数字处理的方法(5个)

es6的数字处理的方法(5个)

方法,数字处理,电脑软件,// Math.trunc方法用于去除一个数的小数部分,返回整数部分。 Math.trunc(4.1) // 4 Math.trunc(4.9) // 4 Math.trunc(-4.1) // -4 Math.trunc(-4.9) // -4 Math.trunc(NaN); // NaN Math.trunc('foo'); // NaN Ma…

如何将word2013转成PDF

如何将word2013转成PDF

转成,如何将,电脑软件,PDF,  我们在使用Word2013编辑好Word文档资料后,需要把文档资料转换成为PDF格式的文件。那么,在这种情况下我们应该怎样做呢?那么下面就由小编给大家分享下将word2013转成PDF的技巧,希望能帮助到您。将word2013转成PDF…

简述Ajax的优点与缺点

简述Ajax的优点与缺点

缺点,优点,电脑软件,Ajax,ajax的优点Ajax的给我们带来的好处大家基本上都深有体会,在这里我只简单的讲几点:1、最大的一点是页面无刷新,在页面内与服务器通信,给用户的体验非常好。2、使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅…

微信小程序实现放大预览功能

微信小程序实现放大预览功能

功能,程序,电脑软件,微信小,需求:当点击图片时,当前图片放大预览,且可以左右滑动实现方式:使用微信小程序图片预览接口我们可以看到api需要两个参数,分别通过下面的data-list和data-src来传到js中wxml代码:<!--图片描述--> <view wx:if="{{item.…

Fireworks如制作折叠效果的菜单

Fireworks如制作折叠效果的菜单

菜单,折叠,效果,电脑软件,Fireworks,现在菜单效果越来越炫,如何实现折叠的效果呢,就几步,很简单,下面我们来看看吧!步骤:1、&ldquo;文件&rdquo;----&ldquo;新建&rdquo;一个图形,尺寸是150x350,当然可以按照需要定义。2、选中左侧的&ldquo;矩形工具&…

怎么在word2007中设置大纲的级别wo

怎么在word2007中设置大纲的级别wo

设置,级别,操作方法,步骤,大纲,  在编辑文档的时候,目录有时是必不可少的一项,但在实际情况当中,那么今天小编就教你怎么在word2007中设置大纲的级别。word2007中设置大纲的级别的步骤选择&ldquo;视图&ldquo;选项卡word2007中设置大纲的级别…

Excel表格中RANK函数怎么做成绩排

Excel表格中RANK函数怎么做成绩排

函数,成绩排名,怎么做,表格,成绩,  当你用excel时需要根据成绩或者业绩进行排序的时候,你是否还在一个一个的比照呢,那样就太没效率了。以下是小编为您带来的关于Excel中RANK函数做成绩排名,希望对您有所帮助。Excel中RANK函数做成绩排名使…

PS图层模式中叠加是什么效果?

PS图层模式中叠加是什么效果?

叠加,图层,模式,效果,电脑软件,PS图层模式中叠加是什么效果?把放置或应用到一个层上的颜色同背景色进行混 合,然而,却能得到有趣的效果,下面我们来看看吧!步骤:1、选择&ldquo;渐变工具&rdquo;,并设置渐变色;2、填充渐变色;3、在文档中,用&ldquo;文…

JavaScript两个变量交换值的实现方

JavaScript两个变量交换值的实现方

方法,变量交换,两个,电脑软件,JavaScript,概要本文主要描述,如何不使用中间值,将两个变量的值进行交换。一、普通做法var a = 1, b = 2, tmp;tmp = a;a = b;b = tmp;普通的做法就是声明多一个临时变量tmp,进行数据交换过程中的缓存。这样的做…

ps暂存盘怎样清理使用

ps暂存盘怎样清理使用

方法,使用方法,电脑软件,ps,  使用ps有时候会发现暂存盘满了,这时候大家可以清理然后就能再次使用了。那么大家知道ps暂存盘怎样清理使用吗?下面是小编整理的ps暂存盘怎样清理使用的方法,希望能帮到大家!ps暂存盘清理使用的方法如图打开ps…

Excel2016表格中制作工资条的方法

Excel2016表格中制作工资条的方法

方法,工资条,表格,电脑软件,  工资条相信大家并不陌生对吧!每月我们必会去领取的,上面会记录我们每月的工资收入情况,这也是许多做财务的必备工作之一。以下是小编为您带来的关于Excel2016制作工资条,希望对您有所帮助。Excel2016制作工资条…

PS绘制质感拟物化牛皮手提包教程

PS绘制质感拟物化牛皮手提包教程

教程,绘制,手提包,牛皮,质感,本次教程内容主要是使用Photoshop制作一个拟物包包,那么如何设计出这样的效果呢?我们需要注意哪些细节?有哪些简单实用的制作技巧呢?这篇教程会带给大家详细的质感拟物化牛皮手提包绘制过程,一起开始制作吧效果图:主…