Gulpfile.js——编译、压缩、合并js和css文件
gulp 一个入门教程:http://www.ydcss.com/
gulp API文档地址:http://www.gulpjs.com.cn/docs/api/ 我的一个Low版的gulpfile
var gulp = require('gulp');
gulpif = require('gulp-if');
sass = require('gulp-sass');
concat = require('gulp-concat');
rename = require('gulp-rename');
cssmin = require('gulp-cssmin');
uglify = require('gulp-uglify');
clean = require('gulp-clean'); gulp.task('clean',function(){
gulp.src(['dist/css/*','dist/js/*'],{read:false})
.pipe(clean());
});
//将bower的库文件对应到指定位置
gulp.task('bowerCopy', function() {
//fonts
gulp.src('bower_components/bootstrap/fonts/**')
.pipe(gulp.dest('vender/fonts'));
//js
gulp.src('bower_components/jquery/dist/jquery.mim.js')
.pipe(gulp.dest('vender/js'));
gulp.src('bower_components/jquery/dist/jquery.mim.map')
.pipe(gulp.dest('vender/js')); gulp.src('bower_components/angular/angular.min.js')
.pipe(gulp.dest('vender/js'));
gulp.src('bower_components/angular/angular.min.js.map')
.pipe(gulp.dest('vender/js'));
gulp.src('bower_components/bootstrap/dist/js/bootstrap.min.js')
.pipe(gulp.dest('vender/js')); //css
gulp.src('bower_components/bootstrap/dist/css/bootstrap.min.css')
.pipe(gulp.dest('vender/css'));
gulp.src('bower_components/bootstrap/dist/css/bootstrap-theme.min.css')
.pipe(gulp.dest('vender/css'));
gulp.src('bower_components/sui/dist/css/sui.min.css')
.pipe(gulp.dest('vender/css'));
}); //Compile SASS
gulp.task('sass-complie', function(){
gulp.src('src/sass/*.scss')
.pipe(sass())
.pipe(gulp.dest('dist/css'));
});
//转移js
gulp.task('src-move',function(){
gulp.src('src/js/*.js')
.pipe(gulp.dest('dist/js'));
gulp.src('src/css/*.css')
.pipe(gulp.dest('dist/css'));
}); // //合并js文件
// gulp.task('scripts-concat',function(){
// gulp.src('src/js/*.js')
// .pipe(concat('all.js'))
// .pipe(gulp.dest('dist/js'))
// }); //压缩css文件
gulp.task('css-min',function(){
gulp.src('dist/css/*.css')
.pipe(cssmin())
.pipe(rename({suffix:'.min'}))
.pipe(gulp.dest('dist/css'));
}); //压缩js文件
gulp.task('js-min',function(){
gulp.src('src/js/*.js')
.pipe(uglify())
.pipe(rename({suffix:'.min'}))
.pipe(gulp.dest('dist/js'));
}); gulp.task('default',['bowerCopy','sass-complie','src-move']);
Gulpfile.js——编译、压缩、合并js和css文件的更多相关文章
- 第十一节:Bundles压缩合并js和css及原理分析
一. 简介 1.背景:浏览器默认一次性请求的网络数是有上限的,如果你得js和css文件太多,就会导致浏览器需要多次加载,影响页面的加载速度, MVC中提供Bundles的方式压缩合并js和css,是M ...
- Grunt的配置及使用(压缩合并js/css)
Grunt的配置及使用(压缩合并js/css) 安装 前提是你已经安装了nodejs和npm. 你能够在 nodejs.org 下载安装包安装.也能够通过包管理器(比方在 Mac 上用 homebre ...
- 前端构建工具 Gulp 压缩合并JS/CSS 并添加版本号、ES6转ES5
Gulp 基于 Node.js 的前端构建工具,可以实现前端代码的编译(sass.less).压缩合并(JS.CSS).测试:图片的压缩:已经添加 JS 和 CSS 版本号,防止浏览器缓存. 1. 安 ...
- 引用:使用grunt 压缩 合并js、css文件
引用:https://www.jianshu.com/p/08c7babdec65 压缩 js 文件 1.创建一个目录 名为grunt 目录.png 2.在grunt目录下创建一个 src目录,存 ...
- 压缩/批量压缩/合并js文件
写在前面 如果文件少的话,直接去网站转化一下就行. http://tool.oschina.net/jscompress?type=3 1.压缩单个js文件 cnpm install uglify-j ...
- 基于node.js的压缩合并安装
1.构建工具(grunt,gulp) 下载地址:http://gruntjs.cn/http://gruntjs.com/ (1)安装nodejs(http://www.nodejs.org/) 验证 ...
- webpack7--css压缩成单独的css文件
先看下下面的图片: 我们可以看到,通过Webpack打包后,默认CSS是通过 内部样式表 写入的.我们如何把压缩后的CSS单独导出为CSS 呢? 1.安装 extract-text-webpack-p ...
- 编写gulpfile.js文件:压缩合并css、js
使用gulp一共有四个步骤: 1. 全局安装 gulp: $ npm install --global gulp 2. 作为项目的开发依赖(devDependencies)安装: $ npm inst ...
- ASP.NET MVC 中CSS JS压缩合并 功能的使用方法
通过压缩合并js文件和css文件,可以减少 服务器的响应 次数和 流量,可以大大减小服务器的压力,对网站优化有比较明显的帮助!压缩合并 css 文件和js文件是网站优化的一个 比较常用的方法. ASP ...
- [Asp.net MVC]Bundle合并,压缩js、css文件
摘要 在web优化中有一种手段,压缩js,css文件,减少文件大小,合并js,css文件减少请求次数.asp.net mvc中为我们提供一种使用c#代码压缩合并js和css这类静态文件的方法. 一个例 ...
随机推荐
- ServiceStack.Redis.RedisNativeClient的方法“get_Db”没有实现
Redis 4.0.0.0版本已经开始收费 Redis 4.0.5.0 已经完成收费 今日在更换Redis版本时 出现了ServiceStack.Redis.RedisNativeClient的方法“ ...
- IOS 给图片添加水印(文字)
有时候上传图片要加唯一标识,简单的就是添加一个水印.这里水印我们讲文字,可以是当前系统时间.坐标.地理位置等 原理就是把一个字符串写到图片上,并且字(font)的大小由图片大小控制. 以下是封装好的一 ...
- 【Linux/Ubuntu学习 7】E: 无法获得锁 /var/lib/dpkg/lock – open (11: 资源暂时不可用) E: 无法锁定管理目录
在用sudo apt-get install 安装软件时,由于速度太慢,想换个软件源,直接关闭了终端,apt-get但进程没有结束,结果终端提示 :“E: 无法获得锁 /var/lib/dpkg/lo ...
- 【MYSQL】数据类型
转载 https://www.baidu.com/s?ie=UTF-8&wd=cnblog 原文 泪云山海的博客 mysql 数据类型 1.整型 MySQL数据类型 含义(有符号) tinyi ...
- 【python,排序】几种常用的排序算法,使用python实现
1. 选择排序 -- -- def selectSort(l): for i in range(len(l)): j = i + 1 t_min = l[i] loc_min = i for j in ...
- seajs第一节,seajs基本使用
什么是seajs,它是干什么使用的,可以去网上搜索一下, 官网:http://seajs.org/docs/ 基本使用seajs <!DOCTYPE html> <html> ...
- 关于ADO.NET 实体数据数据模型无法为Mysql 选择6.0 解决方案
错误:您的项目引用了最新实体框架:但是,找不到数据链接所需的与版本兼容的实体框架数据库....... 图片:
- Linux Bash Shell学习笔记
参数扩展: 1.被名称引用的参数称作变量2.被数字引用的参数称作位置参数3.被特定符号引用的参数具有特殊的含义和用途,被称作Bash的特殊内部变量引用. 基本参数扩展:字符$会引导参数扩展.大括号是可 ...
- BC Harry and Magical Computer (拓扑排序)
Harry and Magical Computer Accepts: 350 Submissions: 1348 Time Limit: 2000/1000 MS (Java/Others) ...
- GSS7 spoj 6779. Can you answer these queries VII 树链剖分+线段树
GSS7Can you answer these queries VII 给出一棵树,树的节点有权值,有两种操作: 1.询问节点x,y的路径上最大子段和,可以为空 2.把节点x,y的路径上所有节点的权 ...