1、安装Node
首先,最基本也最重要的是,我们需要搭建node环境。访问 http://nodejs.org ,然后点击大大的绿色的 install 按钮,下载完成后直接运行程序,就一切准备就绪。 npm 会随着安装包一起安装,稍后会用到它。

安装完:
node -v
npm -v
可以查看node的版本,和node版本安装工具的版本。

2、安装gulp
cd切换到项目目录:
npm install -g gulp
-g表示在全局环境安装,以便任何项目都能使用它。
安装完gulp后
gulp -v
查看是否能正常显示版本号。

3、安装所需扩展
在项目目录下放package.json

  1. {
  2. "name": "cf",
  3. "version": "1.0.0",
  4. "description": "",
  5. "main": "index.js",
  6. "scripts": {
  7. "test": "echo \"Error: no test specified\" && exit 1"
  8. },
  9. "author": "",
  10. "license": "ISC",
  11. "devDependencies": {
  12. "del": "^2.2.2",
  13. "gulp": "^3.9.1",
  14. "gulp-amd-optimize": "^0.4.3",
  15. "gulp-autoprefixer": "^3.1.1",
  16. "gulp-clean-css": "^2.0.13",
  17. "gulp-concat": "^2.6.0",
  18. "gulp-css-spritesmith": "0.0.5",
  19. "gulp-imagemin": "^3.0.3",
  20. "gulp-jshint": "^2.0.1",
  21. "gulp-livereload": "^3.8.1",
  22. "gulp-notify": "^2.2.0",
  23. "gulp-rename": "^1.2.2",
  24. "gulp-ruby-sass": "^2.1.0",
  25. "gulp-uglify": "^2.0.0",
  26. "gulp.spritesmith": "^6.2.1",
  27. "jshint": "^2.9.4"
  28. }
  29. }

包可以根据自己需要选择性修改。
npm install运行,自动安装package.json中的扩展。

4、新建Gulpfile文件,运行gulp

  1. var gulp = require('gulp'),
  2. jshint = require('gulp-jshint'),
  3. uglify = require('gulp-uglify'),
  4. concat = require('gulp-concat'),
  5. rename = require('gulp-rename'),
  6. notify = require('gulp-notify'),
  7. amdOptimize = require('gulp-amd-optimize'),
  8. minifycss = require('gulp-clean-css'),
  9. imagemin = require('gulp-imagemin'),
  10. autoprefixer = require('gulp-autoprefixer'),
  11. sass = require('gulp-ruby-sass'),
  12. spritesmith = require('gulp.spritesmith'),
  13. cssSprite = require('gulp-css-spritesmith'),
  14. livereload = require('gulp-livereload'),
  15. del = require('del');
  16. //清理文件
  17. gulp.task('clean', function(cb) {
  18. del(['dist'], cb);
  19. });
  20. //处理css文件,合并压缩
  21. gulp.task('css',function(){
  22. return gulp.src( ['css/*.css'])
  23. .pipe(autoprefixer({
  24. borwsers: ['last 2 versions'," > 5% "]
  25. }))
  26. .pipe(concat('main.css'))
  27. .pipe(gulp.dest('dist/css'))
  28. .pipe(rename({suffix: '.min'}))
  29. .pipe(minifycss())
  30. .pipe(gulp.dest('dist/css'))
  31. .pipe(notify({ message: 'Css task complete' }));
  32. });
  33. gulp.task('cfjs-chat', function() {
  34. return gulp.src(['js/socket.io.js','js/json2.js','js/face.js','js/chat.js'])
  35. .pipe(jshint('.jshintrc'))
  36. .pipe(jshint.reporter('default'))
  37. //.pipe(amdOptimize( 'main'))
  38. .pipe(concat('cf-chat.js'))
  39. .pipe(gulp.dest('dist/js'))
  40. .pipe(rename('cf-chat.min.js'))
  41. .pipe(uglify())
  42. .pipe(gulp.dest('dist/js'))
  43. .pipe(uglify())
  44. .pipe(notify({ message: 'Scripts task complete' }));
  45. });
  46. //合并压缩JS文件
  47. gulp.task('scripts',['js'],function(){
  48. return gulp.src('js/util/*.js')
  49. .pipe(uglify())
  50. .pipe(gulp.dest('dist/js/util'))
  51. });
  52. //压缩图片
  53. gulp.task('img',function () {
  54. gulp.src('images/min/*')
  55. .pipe(imagemin({
  56. progressive: true
  57. }))
  58. .pipe(gulp.dest('dist/img'))
  59. .pipe(notify({ message: 'Images task complete' }));
  60. });
  61. //css精灵
  62. gulp.task('sprite',function ( cb ) {
  63. var spriteData = gulp.src('dist/img/*.png').pipe(spritesmith({
  64. imgName: 'sprite.png',
  65. cssName: 'sprite.css',
  66. padding: 2
  67. }));
  68. return spriteData.pipe(gulp.dest('sprite'));
  69. });
  70. //文件监控
  71. gulp.task( 'watch',function(){
  72. gulp.watch( 'css/**/*.*',[ 'css' ] );
  73. gulp.watch( 'js/**/*.*',[ 'scripts' ] );
  74. });

有需要要完整gulpfile.js的可以留言。不过这些都是比较老的技术了,现在流行的是:webpack。

更多请支持:http://www.webyang.net/Html/web/article_282.html

前端构建工具gulp相关推荐

  1. 55 前端构建工具Gulp

    技术交流QQ群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder的程序人生 1.第三方模块Gulp Gulp:基于node平台开发的前端构建工具. 前端构建工具:将机 ...

  2. 前端构建工具 Gulp.js 上手实例

    在软件开发中使用自动化构建工具的好处是显而易见的.通过工具自动化运行大量单调乏味.重复性的任务,比如图像压缩.文件合并.代码压缩.单元测试等等,可以为开发者节约大量的时间,使我们能够专注于真正重要的. ...

  3. 前端构建工具gulp的详细介绍以及使用

    什么是 gulp 为什么要用 gulp 如何使用 gulp Installing Gulp Install the gulp command Install gulp in your devDepen ...

  4. 前端构建工具-gulp !(解决浏览器缓存问题)

    一,为啥要用构建工具 项目中的js和css属于静态文件,客户端第一次访问的时候会缓存这些文件,那就意味着当我们需要改js跟css的时候,即使我们将文件中的代码改了重新发布,那么客户端也是看不到,客户端 ...

  5. 前端构建工具gulp之基本介绍

    1.基本介绍 gulp.js是一个自动化构建工具,是自动化项目的构建利器.可以对网站的资源进行优化,将开发过程中一些重复的任务通过执行命令自动完成.这样能很大的提高我们的工作效率. gulp.js是基 ...

  6. “流式”前端构建工具——gulp.js 简介

    Grunt 一直是前端领域构建工具(任务运行器或许更准确一些,因为前端构建只是此类工具的一部分用途)的王者,然而它也不是毫无缺陷的,近期风头正劲的 gulp.js 隐隐有取而代之的态势.那么,究竟是什 ...

  7. 前端构建工具Gulp的学习和使用

    前几天刚鼓捣了Grunt的使用,结果文档还没捂热,老大说我们还是用gulp吧,搞得我又得来整gulp,眼泪流成河了,真是不晓得底层人民的辛苦啊.不过经过对gulp的学习,发现很好用,比grunt舒服! ...

  8. 前端构建工具gulp入门教程

    本文假设你之前没有用过任何任务脚本(task runner)和命令行工具,一步步教你上手Gulp.不要怕,它其实很简单,我会分为五步向你介绍gulp并帮助你完成一些惊人的事情.那就直接开始吧. 第一步 ...

  9. 前端构建工具gulp超详细配置, 使用教程(图文)

    原文地址:http://www.cnblogs.com/2050/p/4198792.html, 我在原文中做了修改了一些错误和添加一些新的东西. 流程 1. 输入命令(可以使用git bash或者命 ...

最新文章

  1. 一种注册表沙箱的思路、实现
  2. Flow 常用知识点整理
  3. 验证input输入框(字母,数字,符号,中文)
  4. IOS开发中的几种设计模式介绍
  5. TensorFlow的新型模型优化工具包可使模型速度提高3倍
  6. 关于 C# select 读取 Excel 数据 为空,或成科学计数法解决方案
  7. python实现匿名发邮件_Python里实现发送邮件的方法
  8. WIN32 获取programdata等指定的系统目录的路径
  9. CCF-CSP 201809-2买菜 满分题解
  10. 电脑技巧 之 Discord翻译插件(PC端)(保姆级教程)
  11. 她他它的用法?收藏给小孩看吧
  12. 小米路由器青春版装linux,小米路由器青春版开启SSH
  13. STM32F103写入Flash
  14. 大学计算机改革PPT,大学计算机课程改革ppt.ppt
  15. E: The repository ‘http://ppa.launchpad.net/appimagelauncher-team/stable/ubuntu bionic Release‘ does
  16. 京东宙斯杯应用大赛 推荐宝 刷票记录 有图有真相
  17. 美容院管理系统的完整会员管理流程
  18. 基于springboot校园二手市场平台
  19. Kali工具库之whatweb
  20. java timeunit_TimeUnit类 java.util.concurrent.TimeUnit

热门文章

  1. Java 利用钉钉机器人发送消息并艾特指定人
  2. 网络最流行的伤感时代空间日志发布:那一年,我们十六、七岁
  3. vue——超详细的美食杰项目—菜谱大全
  4. 读取SIM卡的状态、sim卡网络
  5. 一键安装系统的各种好处
  6. mysql 重做日志 镜像_MySQLinnoDB重做日志文件
  7. Android 全面屏手机view出现绿色边框
  8. 性能测试的方法有哪些
  9. layer的简单的使用
  10. android 字体