VS中使用Gulp
关于gulp资料可以访问:http://www.gulpjs.com.cn/,本篇主要讲解在VS中使用gulp对js和css进行压缩合并
1、下载node.js,gulp依赖于node.js,可以访问http://nodejs.cn/下载,本人下载的4.4.4版本,下载完后进行傻瓜式安装,注意安装路径最好不要含有空格或中文
2、安装gulp以及需要的插件
1、输入命令进行安装gulp
npm install --global gulp
2、安装需要用到的插件,可以选择安装
npm install gulp-minify-css gulp-uglify gulp-concat gulp-rename gulp-notify
3、输入gulp -v,如果能出现版本号说明安装成功
3、新建Web项目,并在项目根目录下新建gulpfile.js,内容为:
var gulp = require('gulp'); // 引入组件
var //htmlmin = require('gulp-htmlmin'), //html压缩
minifycss = require('gulp-minify-css'),//css压缩
uglify = require('gulp-uglify'),//js压缩
concat = require('gulp-concat'),//文件合并
rename = require('gulp-rename'),//文件更名
notify = require('gulp-notify');//提示信息 /*
*:匹配任意数量的字符,不包括/
?:匹配单个字符,不包括/
**:匹配任意数量的字符,包括/
{}:允许使用逗号分隔的列表,表示“or”(或)关系
!:用于模式的开头,表示只返回不匹配的情况
*/
//比如,Scripts/*.js匹配Scripts目录下面的文件名以.js结尾的文件,
//CSS/**/*.css匹配CSS目录和它的所有子目录下面的文件名以.css结尾的文件,
//!*.css表示匹配所有后缀名不为“.css”的文件。
var cssPath = ['CSS/**/*.css'];
var jsPath = ['Scripts/*.js']; // 合并、压缩、重命名css
gulp.task('css', function () {
return gulp.src(cssPath)
.pipe(concat('main.css'))
.pipe(rename({ suffix: '.min' }))
.pipe(minifycss())
.pipe(gulp.dest('dest/css'));
//.pipe(notify({ message: 'css task ok' }));
}); // 合并、压缩js文件
gulp.task('js', function () {
return gulp.src(jsPath)
.pipe(concat('main.js'))
.pipe(rename({ suffix: '.min' }))
.pipe(uglify())
.pipe(gulp.dest('dest/js'));
//.pipe(notify({ message: 'js task ok' }));
}); // 默认任务
gulp.task('default', function () {
gulp.run('css', 'js'); // 监听 .css files 改变则会重新压缩
gulp.watch(cssPath, ['css']); // 监听 .js files 改变则会重新压缩
gulp.watch(jsPath, ['js']);
});
4、如果安装的是VS2015则不需要安装插件,右键gulpfile.js会有task runner explorer,如果是VS2013或其他版本:
在VS工具-扩展更新-联机-输入task runner explorer搜索安装
5、如果出现此页面则成功了,双击某个任务即可运行
6、我这里是双击default任务,运行结果:
结语:在默认的系统盘下安装了gulp以及插件,但是换到其他盘符又不行了,需要重新在该盘安装
VS中使用Gulp的更多相关文章
- 前后端分离中,Gulp实现头尾等公共页面的复用
前言 通常我们所做的一些页面,我们可以从设计图里面看出有一些地方是相同的.例如:头部,底部,侧边栏等等.如果前后端分离时,制作静态页面的同学,对于这些重复的部分只能够通过复制粘贴到新的页面来,如果页面 ...
- Cordova中使用gulp
打开package.json,添加main:gulpfile.js 在dependencies中添加gulp,vs2015十分智能,可以智能从npm中获取依赖如下图: 在添加过程中注意 ...
- 前后端分离中,gulp实现头尾等公共页面的复用 前言
前言 通常我们所做的一些页面,我们可以从设计图里面看出有一些地方是相同的.例如:头部,底部,侧边栏等等.如果前后端分离时,制作静态页面的同学,对于这些重复的部分只能够通过复制粘贴到新的页面来,如果页面 ...
- vscode中执行gulp task的简便方法
本文重点是gulp在vscode中执行task任务的方法 如何像webstorm那样简便操作gulp 的task 第1步:安装node.下载地址:https://nodejs.org/zh-cn/ 检 ...
- Visual Studio 2017中使用gulp编译sass/scss
在Visual Studio 2017中使用gulp编译sass/scss文件 需要的环境:Visual Studio 2017.Node.js.npm 在vs2017中 [视图]-[其他窗口]-[任 ...
- 在Visual Studio 2015的Cordova项目中使用Gulp
之前一直是在vs 2013中使用Cordova来开发移动app(目前有iPad版/iPhone版/安卓版),准备到下一个milestone的时候升级到2015,这两天在尝试各种东西. 2015中的co ...
- 记项目中ES6+gulp+angularjs里的问题
AngualrJs中可用来注入的有三种类型,service.factory.provider,这三种写法不样,用法也都不一样.其中,service只实例化一次,其实就是单例模式的思想.无论我们在什么地 ...
- Ionic学习笔记三 Gulp在ionic中的使用
简介 Gulp是一个基于流的自动化构建器. 安装 npm config set registry http://registry.npm.taobao.org ---最好用国内源 npm instal ...
- 使用gulp在开发过程中合理导出zip文件
最近一段时间一直在做桌面混合应用,跟以往做web端不同的是,无法再通过在浏览器上输入内部的域名来随时跟踪开发版本的状况了,只能通过打包代码让产品或领导随时跟踪进度. 这里就涉及到一些问题了: 1,需要 ...
随机推荐
- Struts2拦截指定方法的拦截器
作者:禅楼望月 默认情况下,我们为一个Action配置一个拦截器,该拦截器会拦截该Action中的所有方法,但是有时候我们只想拦截指定的方法.为此,需要使用struts2拦截器的方法过滤特性. 要使用 ...
- media="screen"是什么意思?
<link rel="stylesheet" href="css/main.css" type="text/css" media=&q ...
- Lyft Level 5 Challenge 2018 - Final Round Div. 1没翻车记
夜晚使人着迷.没有猝死非常感动. A:显然对于水平线段,只有横坐标的左端点为1的时候才可能对答案产生影响:对于竖直直线,如果要删一定是删去一段前缀.枚举竖直直线删到哪一条,记一下需要删几条水平线段就可 ...
- BJOI2018
BJOI2018 省选挂完,是时候更一篇题解了.对于鬼畜结论题我只放结论不给证明,不要打我-- day1 二进制 试题描述 pupil 发现对于一个十进制数,无论怎么将其的数字重新排列,均不影响其是不 ...
- cf 442 D. Olya and Energy Drinks
cf 442 D. Olya and Energy Drinks(bfs) 题意: 给一张\(n \times m(n <= 1000,m <= 1000)\)的地图 给出一个起点和终点, ...
- 【BZOJ 3772】精神污染 主席树+欧拉序
这道题的内存…………………真·精神污染……….. 这道题的思路很明了,我们就是要找每一个路径包含了多少其他路径那么就是找,有多少路径的左右端点都在这条路径上,对于每一条路径,我们随便选定一个端点作为第 ...
- 活泼的CSS 3动态气泡按钮制作
这一次,我们正在创造一个有用的设置与对CSS3的多重背景和动画的力量动画按钮.通过此按钮包,您可以很容易地变成一个动画按钮,在您的网页上的任何链接只是指定一个类名.没有必要JavaScript.四色主 ...
- Java并发(10)- 简单聊聊JDK中的七大阻塞队列
引言 JDK中除了上文提到的各种并发容器,还提供了丰富的阻塞队列.阻塞队列统一实现了BlockingQueue接口,BlockingQueue接口在java.util包Queue接口的基础上提供了pu ...
- 转:深入理解javascript原型和闭包系列
转自:深入理解javascript原型和闭包系列 从下面目录中可以看到,本系列有16篇文章,外加两篇后补的,一共18篇文章.写了半个月,从9月17号开始写的.每篇文章更新时,读者的反馈还是可以的,虽然 ...
- C++中的各种“神奇”东西
将光标放到任意的位置 void gotoxy(int x,int y)//位置函数 { COORD pos; pos.X=x; pos.Y=y; SetConsoleCursorPosition(Ge ...