作用:压缩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. Windows系统的显示器校正

    莫名其妙的显示器显示的内容整体向上偏移,导致一些页面在最大化窗口时,看不见页面的标题,及操作按钮,如页面的关闭,缩小按钮. 解决方法:点击显示器下方的menu按钮,找到 设定 选项,再选择 复位 即可 ...

  2. jenkins 2.282+Publish over ssh 1.22版本发布日志不能实时显示

    问题解决了.作个记录,最新的 [Publish Over SSH]插件1.22版本,jenkins 282版本.1. ssh server 的Verbose output in console要开启2 ...

  3. Shiro 身份认证绕过漏洞 CVE-2022-32532

    前言 Apache Shiro 是一个强大且易用的 Java 安全框架,通过它可以执行身份验证.授权.密码和会话管理.使用 Shiro 的易用 API,您可以快速.轻松地保护任何应用程序 -- 从最小 ...

  4. (转载)Overlay网络

    1. Overlay 网络1.1 Overlay 技术概述    Overlay 在网络技术领域,指的是一种网络架构上叠加的虚拟化技术模式,其大体框架是对基础网络不进行大规模修改的条件下,实现应用在网 ...

  5. Kubernetes学习笔记(二)

    [查看pod里container的logs] kubectl logs nginx --all-containers=true                  #Return snapshot lo ...

  6. windows中的换行符和Linux中的换行符

    # cat -A tmp.tmp 120.4987 12.717858^M$ ^M 对应的字符是 \r # cat tmp.txt | awk -vRS='\r\n' '{print $2,$1}' ...

  7. Android Custom View使用Databinding

    Android Custom View是可以使用 databinding 的 //java.lang.IllegalArgumentException: View is not a binding l ...

  8. 多线程学习(第一天)java语言的线程

    一.并发与并行 并发:处理器不停的切换有操作的线程. 并行:多个处理器同时执行有操作线程. 二.启动线程 无论是A,B哪种方式实现多线程,都需要通过Thread.start方法启动线程. A.Thre ...

  9. 自定义jar包供ERP使用

    功能要求:需要在ERP中调用其他web服务或者自身web服务(比如跨账套过账等) 1.编写java程序,并将程序打包成jar包 import org.apache.http.HttpEntity; i ...

  10. iverilog_makefile

    makefile run: iverilog -g2005-sv -I ../inc -s tb -f filelist -o kout sim: vvp kout flist: find ../rt ...