zoukankan      html  css  js  c++  java
  • 项目实战-Gulp使用

    引言

    在工作中,经常会遇到要把文件合并和压缩等操作,我经历过下面的演进过程:

    • 使用ajaxmin工具手动合并和压缩
    • 使用Grunt合并和压缩
    • 使用Gulp合并和压缩

    这里不探讨Grunt和Gulp的优劣(详细的对比 自己去看),看开发者自己的喜好吧。

    正文

    1. 安装NodeJS

    目前(2015.09.28)的版本是 v4.1.1,前去现在 , 【网站能进去,下载可能不行,应该是被墙了,和谐社会,大侠们各显神通吧】,下载下来之后,直接安装就可以了。

    2. 安装Gulp环境

    如果直接使用命令安装Gulp会被墙掉,下载不下来,需要先修改默认镜像为国内镜像,具体步骤如下:

    1. 使用CMD命令进入node.js的node.exe所在目录,运行命令:

       npm config set registry http://registry.cnpmjs.org/
      
    2. 安装npm全局环境,运行命令:

       npm install gulp –g
      

    3. 项目中使用Gulp

    1. 进入项目的适当位置(一般为根本目录或前端代码的最上层),运行安装本地Gulp环境,运行命令:

       npm install gulp --save-dev
      
    2. 安装css,js压缩的环境,运行命令:

       npm install gulp-minify-css gulp-uglify gulp-concat gulp-rename gulp-jshint del --save-dev
       
       /////////////////
      
       1.css压缩   gulp-minify-css
       2.js压缩   gulp-uglify
       3.js合并   gulp-concat 
       4.重命名     gulp-rename
       5.js代码检测  gulp-jshint (或gulp-jslint)
       6.文件删除	  del
      
    3. 新建文件名为 gulpfile.js 文件,样本文件:

       var gulp = require('gulp'),
       minifycss = require('gulp-minify-css'),
           concat = require('gulp-concat'),
           uglify = require('gulp-uglify'),
           rename = require('gulp-rename'),
           del = require('del');
       
       
       //压缩css
       gulp.task('minify_css',["clean"], function () {
       	var cssSrc = ['./css/*.css'];
       
       	return gulp.src(cssSrc)      //压缩的文件
       		.pipe(concat('all.css'))    //合并所有css到all.css
               .pipe(gulp.dest('./main/css'))   //输出文件夹
       		.pipe(rename({suffix: '.min'}))
       		.pipe(minifycss())
       		.pipe(gulp.dest('./main/css'));	//执行压缩
       });
       
       //压缩js
       gulp.task('minify_js',["clean"], function() {
       	var jsSrc = ['./lib/*.js','!./lib/*.src.js'];
       
           return gulp.src(jsSrc)
               .pipe(concat('all.js'))    //合并所有js到all.js
               .pipe(gulp.dest('./lib'))    //输出all.js到文件夹
               .pipe(rename({suffix: '.min'}))   //rename压缩后的文件名
               .pipe(uglify())    //压缩
               .pipe(gulp.dest('./lib'));  //输出
       });
       
       
       //执行压缩前,先删除以前压缩的文件
       gulp.task('clean', function() {
           return del(['./css/all.css', './css/all.min.css', './lib/all.js', './lib/all.min.js'])
       });
       
       // 默认任务
       gulp.task('default', function(){
           gulp.run('minify_css', 'minify_js');
       });
      
    4. 根据业务需求修改 gulpfile.js

    5. 直接运行gulp命令

    6. 检查压缩文件,是否正常

    做技术就是这样,很多东西要先学会使用,再求深入了解,但不能只停留在会使用的阶段

  • 相关阅读:
    C/C++各种类型int、long、double、char表示范围(最大和最小)
    XSS学习笔记(五)-XSS防御
    组态Log4j(非常具体的)
    C#抽象类其中创建一个静态方法
    DirectSound应用
    谈论Hibernate级联删除——JPA根据Hibernate实现许多级联删除CascadeType.DELETE_ORPHAN
    failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
    英语语法总结---一、英语中定语放在哪
    windows常用命令有哪些(整理)
    css如何实现垂直居中(5种方法)
  • 原文地址:https://www.cnblogs.com/tgwang/p/4843641.html
Copyright © 2011-2022 走看看