安装gulp前端自动化工具

1.安装gulp前端自动化工具

 

[javascript] view plain copy
 
 print?
  1. $ npm install --global gulp  

 

 

2. 安装gulp插件,gulp插件所属devDependencies下面

 

[javascript] view plain copy
 
 print?
  1. $ npm install --save-dev gulp  

3. 在项目的根目录下新建一个gulpfile.js文件:

 

 

[javascript] view plain copy
 
 print?
  1. var gulp = require('gulp');  
  2.   
  3.   
  4. gulp.task('default', function() {  
  5.   // place code for your default task here  
  6. });  


 

4.执行gulp:


[javascript] view plain copy
 
 print?
  1. $ gulp  


以下是常用的插件:
编译Sass (gulp-ruby-sass)
Autoprefixer (gulp-autoprefixer)
缩小化(minify)CSS (gulp-minify-css)
JSHint (gulp-jshint)
拼接 (gulp-concat)
丑化(Uglify) (gulp-uglify)
图片压缩 (gulp-imagemin)
即时重整(LiveReload) (gulp-livereload)
清理档案 (gulp-clean)
图片快取,只有更改过得图片会进行压缩 (gulp-cache)
更动通知 (gulp-notify)

对应在gulpfile.js中的配置:

[javascript] view plain copy
 
 print?
  1. var gulp = require('gulp'),    
  2.     sass = require('gulp-ruby-sass'),  
  3.     autoprefixer = require('gulp-autoprefixer'),  
  4.     minifycss = require('gulp-minify-css'),  
  5.     jshint = require('gulp-jshint'),  
  6.     uglify = require('gulp-uglify'),  
  7.     imagemin = require('gulp-imagemin'),  
  8.     rename = require('gulp-rename'),  
  9.     clean = require('gulp-clean'),  
  10.     concat = require('gulp-concat'),  
  11.     notify = require('gulp-notify'),  
  12.     cache = require('gulp-cache'),  
  13.     livereload = require('gulp-livereload');  

如果希望和Grunt一样载入所有已安装的插件可以访问下面网址:https://github.com/jackfranklin/gulp-load-plugins

载入所有插件的插件就是它:gulp-load-plugins。 

载入后的使用方式和grunt有些小区别





PS:在使用gulp的插件时如果插件名有如:gulp-minify-css 这样名字在gulpfile文件中配置使用的方式是minifyCss,去掉中横线,后面的第一个字母大写



配上gulpfile.js文件:

 

[javascript] view plain copy
 
 print?
  1. 'use strict';  
  2.    
  3. var gulp = require('gulp');  
  4.   
  5. //加载package.json文件里的devDependencies中的所有插件  
  6. var plugins = require('gulp-load-plugins')();  
  7.    
  8. gulp.task('sass', function () {  
  9.   gulp.src('./app/sass/**/*.scss')  
  10.     .pipe(plugins.sass({ style: 'expanded' }))  
  11.     .pipe(plugins.autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))  
  12.     .pipe(gulp.dest('dist/assets/css'))  
  13.     .pipe(plugins.rename({suffix: '.min'}))  
  14.     .pipe(plugins.minifyCss())  
  15.     .pipe(gulp.dest('dist/assets/css'))  
  16.     .pipe(plugins.notify({ message: 'Styles task complete' }));  
  17. });  
  18.    
  19. gulp.task('sass:watch', function () {  
  20.   gulp.watch('./sass/**/*.scss', ['sass']);  
  21. });  

配置package.json文件:

 

 

[javascript] view plain copy
 
 print?
  1. {  
  2.   "name": "gulsp",  
  3.   "version": "1.0.0",  
  4.   "description": "",  
  5.   "main": "index.js",  
  6.   "dependencies": {  
  7.     "gulp": "^3.9.0"  
  8.   },  
  9.   "devDependencies": {  
  10.     "gulp": "^3.9.0",  
  11.     "gulp-autoprefixer": "^3.0.2",  
  12.     "gulp-cache": "^0.3.0",  
  13.     "gulp-clean": "^0.3.1",  
  14.     "gulp-concat": "^2.6.0",  
  15.     "gulp-imagemin": "^2.3.0",  
  16.     "gulp-jshint": "^1.11.2",  
  17.     "gulp-livereload": "^3.8.1",  
  18.     "gulp-load-plugins": "^0.10.0",  
  19.     "gulp-minify-css": "^1.2.1",  
  20.     "gulp-notify": "^2.2.0",  
  21.     "gulp-rename": "^1.2.2",  
  22.     "gulp-ruby-sass": "^2.0.4",  
  23.     "gulp-sass": "^2.0.4",  
  24.     "gulp-uglify": "^1.4.2"  
  25.   },  
  26.   "scripts": {  
  27.     "test": "echo \"Error: no test specified\" && exit 1"  
  28.   },  
  29.   "keywords": [  
  30.     "gulp"  
  31.   ],  
  32.   "author": "bxcn",  
  33.   "license": "ISC"  
  34. }  


 

以上操作只是简单跑一下gulp流程,浮浅的很,牛人可忽略此文章,呵呵!
posted @ 2016-06-05 22:10  五艺  阅读(134)  评论(0)    收藏  举报