之前搭建过Grunt,但是用起来有点繁琐,后来有人跟我说gulp更多简单。所以今天又搭建一个gulp。
在使用gulp前应该有nodeJs环境,安装完nodejs后,就可以开始gulp的搭建了。

先新建一个文件夹test,如下:

然后打开Node.js命令窗口,进入test文件夹

在test文件夹中新建gulpfile.js

在nodeJs命令窗口中先安装后需要用到的插件:

npm install gulp-connect --save-dev 
npm install gulp-concat --save-dev 
npm install gulp-strip-debug --save-dev 
npm install gulp-uglify --save-dev
npm install gulp-autoprefixer --save-dev

npm install gulp-minify-css --save-dev 

打开这个文件并编辑输入之后保存:

//引入插件
var gulp = require('gulp');
var connect = require('gulp-connect');
var concat = require('gulp-concat');
var stripDebug = require('gulp-strip-debug');
var uglify = require('gulp-uglify');
var autoprefix = require('gulp-autoprefixer');
var minifyCSS = require('gulp-minify-css'); //此处用于监听html,css,js文件是否修改,否有修改会调用后面相应的task
gulp.task('watch', function () {
gulp.watch(['./test/*.html'], ['html']);
gulp.watch(['./test/**/*.css'], ['styles']);
gulp.watch(['./test/**/*.js'], ['scripts']);
}); //使用connect启动一个Web服务器,在浏览器里默认从localhost:8080/进入
gulp.task('connect', function () {
connect.server({
root: 'test',
livereload: true
});
}); gulp.task('html', function () {
gulp.src('test/*.html')
.pipe(connect.reload());
}); gulp.task('styles', function() {
gulp.src(['./test/css/*.css'])
.pipe(concat('css.css'))
.pipe(autoprefix('last 2 versions'))
.pipe(minifyCSS())
.pipe(connect.reload())
.pipe(gulp.dest('./build/styles/'));
});
gulp.task('scripts', function() {
gulp.src(['./test/js/js.js'])
.pipe(concat('js.js'))
.pipe(stripDebug())
.pipe(uglify())
.pipe(connect.reload())
.pipe(gulp.dest('./build/scripts/'));
}); //运行Gulp时,默认调用的Task
gulp.task('default', ['connect', 'watch','styles','scripts']);

最后再从nodeJs命令窗口中输入gulp,就可以进行自动压缩,刷新页面了

gulp自动刷新和css、js压缩的更多相关文章

  1. gulp自动刷新插件

    gulp自动刷新的插件很多,但是感觉最好用的还是 browser-sync 插件.如果不想用命令行,也可以使用 browser-sync界面工具 先安装 browser-sync 插件: npm in ...

  2. CodePen避免自动刷新导致的JS卡死

    经常需要做一些前端代码的实验, 这时候我往往会用JSFiddle或CodePen. 最近用CodePen更多一些, 里面提供的选项更加丰富, 提供了各种各样的HTML/Javascript/CSS P ...

  3. PHP 页面自动刷新可借助JS来实现,简单示例如下:

    <?php  echo "系统当前时间戳为:"; echo ""; echo time(); //<!--JS 页面自动刷新 --> echo ...

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

    为了防止客户端的静态资源缓存,我们需要每次更新css或js的时候,通过md5或时间戳等方式重新命名静态资源.让客户端可以重新请求资源,而不是从缓存里取.然后html模板里的src也要做相应的修改.当然 ...

  5. 【转】asp.net mvc css/js压缩合并 --- combres

    转自:http://www.cnblogs.com/zxktxj/archive/2012/05/30/2526246.html NuGet   网站:http://nuget.codeplex.co ...

  6. ASP.NET MVC 中CSS JS压缩合并 功能的使用方法

    通过压缩合并js文件和css文件,可以减少 服务器的响应 次数和 流量,可以大大减小服务器的压力,对网站优化有比较明显的帮助!压缩合并 css 文件和js文件是网站优化的一个 比较常用的方法. ASP ...

  7. maven css/js 压缩配置

    <plugin>               <groupId>net.alchim31.maven</groupId>               <art ...

  8. Gulp:静态资源(css,js)版本控制

    为了防止客户端的静态资源缓存,我们需要每次更新css或js的时候,通过md5或时间戳等方式重新命名静态资源: 然后涉及到的html模板里的src也要做相应的修改,静态资源需要优化(压缩合并) 文件目录 ...

  9. gulp为css,js添加版本号

    由于cdn缓存,更改样式后会有一段时间不生效,解决方法就是给css,js加上版本号效果如下: 1.安装gulp插件 npm install --save-dev gulp-rev (version:9 ...

随机推荐

  1. [LeetCode] Odd Even Linked List 奇偶链表

    Given a singly linked list, group all odd nodes together followed by the even nodes. Please note her ...

  2. redis慢查询日志

    运维需要记录一下主redis中那些“慢操作”的命令,然后找到相关的业务方,不然的话,阻塞 就不好玩了.然后就直接在redis手册中就找到了相关的命令. SLOWLOG subcommand [argu ...

  3. Android中基于CGroup的memory子系统HAL层分析-lmkd

    Android在内存管理上于Linux有些小的区别,其中一个就是引入了lowmemorykiller.从lowmemorykiller.c位于drivers/staging/android也可知道,属 ...

  4. markdown语法说明

    1.先写一个标题 # 一级标题.相当于 <h1> ## 二级标题.相当于 <h2> ### 三级标题.相当于 <h3> #### 四级标题.相当于 <h4&g ...

  5. Android开发之带你轻松集成友盟统计

    友盟统计是什么呢?为什么要集成他呢? 当我们需要获取自己写的软件的装机量和用户使用信息时,这时我们可以集成友盟统计. 首先到友盟统计中注册账号什么的就不废话了,直接看创建项目: 在个人中心中的管理里面 ...

  6. 佛祖保佑 永无bug

    /* _ooOoo_ o8888888o 88" . "88 (| -_- |) O\ = /O ____/`---'\____ .' \\| |// `. / \\||| : | ...

  7. iOS PhotoKit框架如何获取视频文件大小

    // 获取相册中的资源[group enumerateAssetsWithOptions:NSEnumerationReverse usingBlock:^(ALAsset *result, NSUI ...

  8. 【bzoj4518】 Sdoi2016—征途

    http://www.lydsy.com/JudgeOnline/problem.php?id=4518 (题目链接) 题意 给出n个连续的整数,求将它们分成m段,求最小方差*m^2. Solutio ...

  9. BZOJ4539: [Hnoi2016]树

    复制的树缩点,主席树查k小,毫无技术含量,纯码农题. #include<bits/stdc++.h> #define u first #define v second #define F ...

  10. Web Service简要概念,学习记录!

    Web Service平台需要一套协议来实现分布式应用程序的创建.任何平台都有它的数据表示方法和类型系统.要实现互操作性,Web Service平台必须提供一套标准的类型系统,用于沟通不同平台.编程语 ...