快速搭建gulp项目实战

  • 2019 年 10 月 6 日
  • 笔记

gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器;她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成;使用她,我们不仅可以很愉快的编写代码,而且大大提高我们的工作效率。

正文

1. 安装NodeJS,自行在node官网下载,并安装,通过node-v检查是否安装成功

2.在此项目中,使用的是cnpm进行安装的,如果想使用cnpm安装,去淘宝镜像安装cnpm

$ npm install -g cnpm --registry=https://registry.npm.taobao.org   安装cnpm 

2. 安装Gulp环境

1.安装全局环境,运行命令

npm install gulp –g

3. 项目中使用Gulp

     1.创建一个新的文件夹(gulp创建的文件夹),进行初始化  cnpm init会出现下面内容,并在文件夹中有一个package.json

2.在命令中运行安装本地Gulp环境

 cnpm install gulp --save-dev

3.在本地文件新建文件名为 gulpfile.js 文件: 

常用的一些方法    gulp.task 定义任务    gulp.src   找到执行文件    gulp.dest  执行任务的文件去出    gulp.watch 观察文件是否发生变化

4.安装一些常用的压缩包

cnpm install gulp-minify-css gulp-uglify gulp-concat --save-dev    /////////////////    1.css压缩   gulp-minify-css    2.js压缩   gulp-uglify    3.js合并   gulp-concat     4.图片压缩    gulp-imagemin    5.less转化成css gulp-less    ......

5.在文件中新建一个src目录,用于存放你文件,

6.实现一个文件合并,在src下面创建两个html文件

var gulp = require('gulp');      gulp.task("copyHtml",function(){  	gulp.src("src/*.html") //当前目录下所有的html文件  		.pipe(gulp.dest("dist")) //文件的去处  })  dist是通过 gulp copyHtml生成的文件夹

  常用的代码压缩

var gulp = require('gulp');  var imagemin = require('gulp-imagemin');   图片压缩  var uglify = require("gulp-uglify");  js压缩  var less = require('gulp-less');      less  var cleanCSS = require('gulp-clean-css');  css压缩    //文件合并  gulp.task("copyHtml",function(){  	gulp.src("src/*.html")  		.pipe(gulp.dest("dist"))  //把src目录中所有html格式的文件全部合并到dist目录中  })    //图片压缩  gulp.task("imagemin",function() {  	gulp.src("src/images/*")   所有src > images中的图片  		.pipe(imagemin())  图片压缩  		.pipe(gulp.dest("dist/images"))  //放入到dist目录下面的images文件  })    //js压缩  gulp.task("uglify",function() {  	gulp.src("src/js/*.js")  		.pipe(uglify()) //压缩js代码  		.pipe(gulp.dest("dist/js")) //通过gulp uglify命令,自动输出dist下面js文件  })    //css压缩并less转换成css  gulp.task("lessc",function() {  	gulp.src("src/less/*.less")  //手动创建  		.pipe(less()) //将less文件编译成css文件  		.pipe(cleanCSS())  //压缩css  		.pipe(gulp.dest("dist/css"))   //通过gulp lessc 命令,自动输出dist/css文件  })    //监听文件是否有变化  gulp.task("watch",function(){  	gulp.watch("src/*.html",['copyHtml']);  	gulp.watch("src/images/*",['imagemin']);  	gulp.watch("src/js/*.js",['uglify']);  	gulp.watch("src/lessc/*.less",['lessc'])  })  通过输入gulp watch自动编译

目录中的结构