作用:压缩css、js、img,合并文件,改名字,编译sass,拷贝

使用步骤:

1.安装node环境,下一步,下一步,安装C盘;

2.在你的根目录下,在地址栏输入cmd回车;

3.检测node和npm是否成功:

node -v 出现版本号,证明node成功了

npm -v 出现版本号,证明npm成功了:教程 https://www.runoob.com/nodejs/nodejs-npm.html

npm包资源官网:https://www.npmjs.com/

4.安装gulp:

方法一:安装gulp再安装依赖插件:一个个单独安装;

    全局安装:npm install gulp -g

    局部安装:npm install gulp --save -dev

    安装插件:

        npm install --save -dev gulp-sass

        npm install --save -dev gulp-cssmin

        ……(你需要什么插件的时候)

方法二:一次性安装gulp和依赖的插件:

把package.json包放到根目录下:

写指令: npm install(一般没有出现红色err就成功了)

指令检测:gulp -v ,证明成功了

5.使用gulp,进行任务的执行:先写任务,再执行任务

写任务:创建gulpfile.js文件,放在根目录下;

打开命令行执行任务:gulp 任务名称

6.常见的任务:(还有很多。。。)

// 1.编译sass

var sass = require('gulp-sass');

gulp.task('sass',function(){

  return gulp.src('src/lib/style.scss')

               .pipe(sass())

              .pipe(gulp.dest('dist/lib'));

 });

//2.布置任务:压缩css文件

var cssmin=require('gulp-cssmin');

gulp.task('cssmin',function(){

  return gulp.src('src/lib/css.css')

                .pipe(cssmin())

                .pipe(gulp.dest('dist/css'));

});

//3.重命名

var rename=require('gulp-rename');

gulp.task('rename',function(){

   return gulp.src('src/lib/css.css')

                 .pipe(cssmin())

                 .pipe(rename('css.min.css'))

                .pipe(gulp.dest('dist/css'));

});

//4.压缩js并重命名:先转成es5再压缩

var uglify=require('gulp-uglify');

gulp.task('uglify',function(){

  return gulp.src('src/js/common.js')

                 .pipe(uglify())

                  .pipe(rename('common.min.js'))

                 .pipe(gulp.dest('dist/js'));

});

//5.合并文件

var concat=require('gulp-concat');

gulp.task('concat',function(){

  return gulp.src(['dist/css/aa.css','dist/css/bb.css'])

                 .pipe(concat('all.css'))

                 .pipe(gulp.dest('dist/css'));

});

//6.压缩图片

var imagemin=require('gulp-imagemin');

gulp.task('imgmin',function(){

  return gulp.src('src/img/*')

              .pipe(imagemin())

              .pipe(gulp.dest('dist/img'));

});

//7.将es6转成es5

安装babel:

全局安装babel:npm install -g babel-cli

本地安装:npm install --save-dev babel-preset-es2015 babel-cli

把.babelrc文件拷贝到根目录下,写指令开始转es5

//es6转成es5指令:

babel es6文件路径 -o 转成功后保存的路径

babel src/js/es6.js -o dist/js/es5.js

gulp技术:自动化构建工具的更多相关文章

  1. gulp前端自动化构建工具新手入门篇

    很久没有更新博文了. 经过了一次年前吐血的赶项目,终于在年后回血了.趁着有空,新学到了一个前端自动化构建工具-gulp. 现在我们通过这3个问题来学习一下: 1.什么是gulp? 2.为什么要用gul ...

  2. gulp前端自动化构建工具

    博主不易,不求赞赏,希望把自己遇到的难点写出来,以及希望自己能有能力写出一篇不错的博文. 前端构建工具本人 bootstrap+jquery用gulp vue+element 用webpack 引文 ...

  3. gulp——用自动化构建工具增强你的工作流程

    想要使用gulp,就要了解gulp,就像追自己的爱豆,你要知道爱豆的喜好.兴趣 简单的了解你的新爱豆———安装nodejs -> 全局安装gulp -> 项目安装gulp以及gulp插件 ...

  4. gulp前端自动化构建工具使用

    (1)新建项目目录gulp_web (2)项目目录下建目录src里面存放需要进行gulp处理的文件目录及文件 (3)gulpfile.js文件内容为声明需要打包应用的gulp组件及打包文件路径和打包任 ...

  5. gulp前端自动化构建工具入门篇

    现在我们通过这3个问题来学习一下: 1.什么是gulp? 2.为什么要用gulp? 3.怎么用?   什么是gulp 答:是一个前端自动化的构建工具,直白点说,如果没有这个工具,我们利用人工依旧可以做 ...

  6. 【Node.js学习笔记】使用Gulp项目自动化构建工具

    刚接触node.js,对前端的一些东西还不是很清楚,据说Gulp这东西很强大,先来看看从网上抄的一段关于自动化构建的描述: 在为数众多的中小型软件作坊中,不存在自动化构建和发布工具.构建.交付准备环境 ...

  7. Gulp:自动化构建工具

    一.介绍: gulp是一个基于流的构建工具,可以自动执行指定的任务,简洁且高效 二.优点: 开发环境下,想要能够按模块组织代码,监听实时变化 css/js预编译,postcss等方案,浏览器前缀自动补 ...

  8. gulp --- 前端自动化构建工具

    目录 1. gulp使用步骤 1.1 安装Node.js 1.2 全局安装gulp 1.3 安装项目依赖包gulp 1.3.1 了解package.json 1.3.2 根据package.json安 ...

  9. gulp自动化构建工具

    gulp    自动化构建工具,实时监控.代码合并.压缩... http://www.gulpjs.com.cn/     中文网 http://gulpjs.com/plugins/     英文网 ...

  10. Gulp(自动化构建工具 )

    前言 Gulp,简而言之,就是前端自动化开发工具,利用它,我们可以提高开发效率. 比如: 1.  压缩js 2.  压缩css 3.  压缩less 4.  压缩图片 等等… 我们完全可以利用Gulp ...

随机推荐

  1. 查找数组中某个元素出现的次数,例如数组arr=[1,2,3,4,3,4,5,3]中target=3出现的次数

    1 function(arr,target) { 2 3 let num = 0 4 5 arr.forEach((item, index) => { 6 7 if (item===target ...

  2. potoshop制作一寸照片

    potoshop制作一寸照片 经常因为各种原因需要提供1寸照片,第一反应应还是跑照相馆专业.但是疫情封闭在家怎么高,刚好把偶尔使用一次的potoshop用起来,解决照片制作问题,一来能省几毛钱买茶叶蛋 ...

  3. 建筑CAD软件如何设置当前默认层高?

    在绘制CAD建筑图的过程中,必然少不了要对层高进行设置,如果每层的层高都一样,想要调整建筑CAD软件默认当前层高的话该如何设置?本节建筑CAD教程就和小编一起来了解一下浩辰CAD建筑软件中调整默认当前 ...

  4. 输入流导致javax.crypto.BadPaddingException

    使用FileInputStream一切正常,切换为使用classpath从jar包读取getResourceAsStream一直报如下错误 javax.crypto.BadPaddingExcepti ...

  5. Fortran 笔记之 继承和聚合

    继承(类扩展)和聚合 参考自Introduction to Modern Fortran for the Earth System Sciences 我们在3.3部分的开头提到过,OOP范式通常会导致 ...

  6. List<Object>转为对象

    List<Object> list = new ArrayList<>(); List<BMSQ> bmsqList = (List<BMSQ>)(Li ...

  7. webpackHotMiddleware改造成koa支持的中间件

    const stream = require('stream'); const webpackHot = require('webpack-hot-middleware'); const PassTh ...

  8. 部分jdk网盘链接

    链接:https://pan.baidu.com/s/1Nw84qVRL3Buarh2LY1lWEg 提取码:6q2z 含 6u45 7u80 8u202 11.0.X 的win及linux版 没有网 ...

  9. ABAP 删除内表重复数据

    SORT <内表> BY <字段> [ascending/descending]. DELETE ADJACENT DUPLICATES FROM <内表> COM ...

  10. Oracle11gR2安装

    https://blog.csdn.net/newbie_907486852/article/details/80716275