glup安装
资料参考:http://www.w3ctrain.com/2015/12/22/gulp-for-beginners/
1、在安装 node 的环境后:
npm install gulp -g 全局安装
npm install --save-dev gulp gulp-ruby-saaa gulp-autoprefixer gulp-minify-css gulp-htmlmin gulp-uglify gulp-imagemin gulp-rename gulp-cancat gulp-notify gulp-cache gulp-cached gulp-livereload del gulp-useref browser-sync run-sequence;
2、demo :
var gulp = require('gulp'),
sass = require('gulp-ruby-sass'),
autoprefixer = require('gulp-autoprefixer'),
minifycss = require('gulp-minify-css'),
htmlmin = require('gulp-htmlmin'),//html压缩
jshint = require('gulp-jshint'),
uglify = require('gulp-uglify'),
imagemin = require('gulp-imagemin'),
rename = require('gulp-rename'),
concat = require('gulp-concat'),
notify = require('gulp-notify'),
cache = require('gulp-cache'),
cached = require('gulp-cached'),
livereload = require('gulp-livereload'),
del = require('del'),
browserSync = require('browser-sync'),
useref = require('gulp-useref'),
runSequence = require('run-sequence');
var jsMini = [
'./public/src/js/pages/profit.js',
'./public/src/js/pages/operation.js',
'./public/src/js/pages/information.js',
'./public/src/js/pages/import.js',
'./public/src/js/pages/recover.js',
'./public/src/js/pages/material.js',
'./public/src/js/pages/mycenter.js',
'./public/src/js/pages/master.js',
'./public/src/js/admin/admin.js',
'./public/src/js/admin/apply.js'
]
gulp.task('browserSync', function() {
browserSync({
proxy: "192.168.66.79:8802"
})
})
gulp.task('otherJs', function() {
jsMini.forEach(function (val) {
gulp.src(val)
.pipe(cached('otherJs'))
.pipe(rename({suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest('./public/js/'))
.pipe(notify({ message: 'otherJs task complete' }))
.pipe(browserSync.reload({
stream: true
}))
})
});
gulp.task('scripts', function() {
gulp.src(['./public/src/js/plug_in/jquery.js','./public/src/js/plug_in/confirmBox.min.js','./public/src/js/plug_in/manage.js','./public/src/js/common.js'])
.pipe(cached('scripts'))
.pipe(concat('main.js'))
.pipe(rename({suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest('./public/js/plug_in'))
.pipe(notify({ message: 'upload task complete' }))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('login', function() {
return gulp.src(['./public/src/js/plug_in/jquery.js','./public/src/js/plug_in/manage.js','./public/src/js/login.js'])
.pipe(cached('login'))
.pipe(concat('login.js'))
.pipe(rename({suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest('./public/js/plug_in'))
.pipe(notify({ message: 'login task complete' }))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('css', function() {
gulp.src(['./public/src/css/base.css','./public/src/css/bhu.css'])
//.pipe(cached('css'))
.pipe(autoprefixer())
.pipe(concat('bhu.css'))
.pipe(minifycss())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('./public/css'))
.pipe(notify({ message: 'css base task complete' }))
.pipe(browserSync.reload({
stream: true
}))
gulp.src(['./public/src/css/base.css','./public/src/css/login.css'])
//.pipe(cached('css'))
.pipe(autoprefixer())
.pipe(concat('login.css'))
.pipe(minifycss())
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('./public/css'))
.pipe(notify({ message: 'css login task complete' }))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('jsportal', function() {
return gulp.src(['./public/src/portal/common.3.js','./public/src/portal/rewardapp.3.js'])
.pipe(concat('reward.2.1.js'))
// .pipe(rename({suffix: '.min'}))
.pipe(uglify())
.pipe(gulp.dest('./public/src/portal'))
.pipe(notify({ message: 'reward.2.1 complete' }))
});
gulp.task('watch', ['browserSync', 'scripts', 'css','login', 'otherJs'], function (){
gulp.watch('public/src/css/*.css', ['css']);
gulp.watch('public/src/js/pages/*.js', ['otherJs']);
gulp.watch('public/src/js/plug_in/*.js', ['scripts']);
gulp.watch('public/src/js/login.js', ['login']);
//gulp.watch('public/src/portal/**/*.js', ['jsportal']);
// Reloads the browser whenever HTML or JS files change
gulp.watch('resources/views/home/**/*.php', browserSync.reload);
gulp.watch('public/js/*.js', browserSync.reload);
});
gulp.task('default', function (callback) {
runSequence(['browserSync', 'scripts', 'css', 'otherJs', 'login', 'watch'],
callback
)
})
glup安装的更多相关文章
- 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用
关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用 工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...
- gulp入坑系列(1)——安装gulp
前言 好吧,我承认我是为了搞定Sass编译CSS文件的问题,迷一样的着手入gulp的坑,sass和gulp的爬坑历程大概会一起更新.然后感觉这里windows和mac的流程差不多,不过mac的通常 ...
- npm安装依赖包 --save-dev 和 --save; package.json的devDependencies和dependencies 的区别!
以前一直在纠结一个npm安装的包依赖管理的问题.是这样的: 我们在使用npm install 安装模块或插件的时候,有两种命令把他们写入到 package.json 文件里面去,他们是:--save- ...
- window下Ionic环境安装
安装以下文件 1.java.jdk 2apache ant 3.android skd 4.node 目前是这几个. 大该流程就是这样子的. Ionic官方教程: http://learn.ioni ...
- gulp的安装和配置
gulp的安装和使用方法 1先是有node为前提的, 2安装淘宝镜像 2.1因为很多npm包都是国外的,所以安装起来很慢,所以我们可以利用淘宝的镜像服务器来进行安装后续的包,速度和成功率会高很多. ...
- gulp 安装与使用
一.Gulp 是基于node.js 流(stream)的一个前端自动化构建工具,可以使用它构建自动化工作流程,简化我们工作量,让我们把重点放在功能的开发上,从而提高我们的开发效率和工作质量 我们可以用 ...
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...
- Sublime Text3安装JsHint
介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...
随机推荐
- es之主分片和复制分片的交互过程
1:索引(创建或者删除)一个文档 首先:发送一个索引或者删除的请求给node1 其次:node1接收到请求之后,会根据请求中携带的参数“文档id”判断出该文档应该存储在具体哪一个shard中 shar ...
- (三)mysql -- 逻辑控制
条件控制 CASE validity_date THEN '月' THEN '年' ELSE '季' END CASE THEN '月' THEN '年' ELSE '季' END 循环控制 待补充
- git回滚操作
一,找到之前的版本历史纪录,确定要回滚到那个版本号:git log 二,回滚到这个版本:git reset --hard 72229f823c8b21cbe52142a944d74f1883fa41a ...
- spring boot shiro redis整合基于角色和权限的安全管理-Java编程
一.概述 本博客主要讲解spring boot整合Apache的shiro框架,实现基于角色的安全访问控制或者基于权限的访问安全控制,其中还使用到分布式缓存redis进行用户认证信息的缓存,减少数据库 ...
- SpringBoot整合Shiro实现权限控制,验证码
本文介绍 SpringBoot 整合 shiro,相对于 Spring Security 而言,shiro 更加简单,没有那么复杂. 目前我的需求是一个博客系统,有用户和管理员两种角色.一个用户可能有 ...
- Cordova-在现有iOS工程自动化接入Cordova插件
模拟Cordova插件命令 自己编写脚本,了解cordova添加插件做了哪些事情. 上一篇文章了解到,web与native的交互主要是cordova.js中的exec方法调用,触发交互事件.UIWeb ...
- jQuery file upload process queue
在jquery.ui.widget.js中bridge处打上断点,查看instance内容 $.widget.bridge = function( name, object ) { var fullN ...
- 八、RF的内置变量
1.表示“空”的变量 ${EMPTY} 空 适用输入空的案例 2.表示“空格”的变量 ${SPACE} 空格,如果是需要5个空格可以这样写${SPACE*5} 3.目录的绝对路径 ${CURDIR} ...
- wpf进程间通讯
wpf进程间通讯 在联想智能识别项目中,需要用到进程间通讯,并且是低权限向高权限发送消息.首先声明一下,此项目是wpf的. 首先先简要说一下什么时候会用到进程间通讯,如:在Windows程序中,各个进 ...
- 5.2.k8s.Secret
#Secret Secret存储密码.token.密钥等敏感数据 Secret以Volume或环境变量方式使用 #Secret类型 Opaque : base64 编码格式的 Secret kuber ...