gulp安装以及打包合并的方法教程

前言

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

安装、打包合并

1.安装node.js  下载地址: http://nodejs.cn/

打开node.js 命令行,输入: node  -v ,有版本号,则正确安装。

2.安装淘宝镜像 :命令行输入 :

npm install -g cnpm --registry=http://registry.npm.taobao.org

目的:使下在速度更快。

3.全局安装gulp

cnpm install --global gulp

4.创建目录,打开F盘,创建gulp文件夹。

命令行输入 :

f:

cd gulp

5.安装本地gulp

cnpm install --save-dev gulp

6.创建package.json文件

cnpm init 

一路enter确定就行

7.web编辑器打开此gulp目录,如hbuilder、webstorm。

在gulp目录下创建gulpfile.js文件,gulp运行的入口

8.确定何种打包压缩,html、js、css、img

9.js打包

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

gulp.task('default',function(){
 gulp.src('js/*.js') // 路径问题:gulpfile.js为路径的起点。此路径表示js文件下的所有js文件。
 .pipe(concat('all.js')) //合并成的js文件名称
 .pipe(uglify()) //压缩
 .pipe(gulp.dest('build')); //打包压缩在build目录下。
});

10.运行;node.js输入

gulp

会有报错,提示 gulp-concat组件没有安装。开始安装 :cnpm install gulp-concat --save-dev

再次运行 :gulp

再次报错,提示gulp-uglify组件没有安装。开始安装 :cnpm install gulp-uglify --save-dev

再次运行 :gulp

。。。。。。。。。。。。。。。

成功之后会

这里会看到 finished ‘default' ,‘default' 就是gulp.task任务开始的默认入口。如果创建多个task任务,且修改任务名称如:

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

gulp.task('default',function(){
 gulp.src('js/*.js') // 路径问题:gulpfile.js为路径的起点。此路径表示js文件下的所有js文件。
 .pipe(concat('all.js')) //合并成的js文件名称
 .pipe(uglify()) //压缩
 .pipe(gulp.dest('build')); //打包压缩在build目录下。
})

//css 打包压缩
var autoprefix = require('gulp-autoprefixer');
var minifyCSS = require('gulp-minify-css');

  gulp.task('style', function() { //task 任务名称为style

  gulp.src('.css/*.css')

  .pipe(concat('styles.css'))

  .pipe(autoprefix('last 2 versions'))

  .pipe(minifyCSS())

  .pipe(gulp.dest('styles'));

  });

重新运行 : gulp

结果:

会发现只运行了 default的task任务。因为这是唯一默认的gulp执行入口。

修改如下

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

gulp.task('js',function(){
 gulp.src('js/*.js') // 路径问题:gulpfile.js为路径的起点。此路径表示js文件下的所有js文件。
 .pipe(concat('all.js')) //合并成的js文件名称
 .pipe(uglify()) //压缩
 .pipe(gulp.dest('build')); //打包压缩在build目录下。
})

//css 打包压缩
var autoprefix = require('gulp-autoprefixer');
var minifyCSS = require('gulp-minify-css');

  gulp.task('style', function() { //task 任务名称为style

  gulp.src('.css/*.css')

  .pipe(concat('styles.css'))

  .pipe(autoprefix('last 2 versions'))

  .pipe(minifyCSS())

  .pipe(gulp.dest('styles'));

  });

<br>gulp.task('default',function(){
 gulp.run(['js','style']); //这里开始执行多个task任务
});

如果遇到什么组件没有安装的话,想你应该知道怎么操作了。

11.图片压缩

var imagemin = require('gulp-imagemin');
gulp.task('img', function() {
 return gulp.src('imgs/*.png')
 .pipe(imagemin())
 .pipe(gulp.dest('miniImg'));
});

12.html压缩

var htmlmin = require('gulp-htmlmin');
gulp.task('html', function() {
 return gulp.src('../*.html')
 .pipe(htmlmin({collapseWhitespace: true}))
 .pipe(gulp.dest('../'));
});

13.路径问题自己修改

gulp打包js/css时合并成一个文件时的顺序解决

1、可以使用插进gulp-order。

2、可以这样的写法:

return gulp.src(['js/common.js','js/**/*.js'])
.pipe(concat('build.js'))//合成到一个js
.pipe(gulp.dest(buildBasePath+'js'))//输出到js目录
.pipe(uglify())//压缩js到一行
.pipe(concat('build.min.js'))//压缩后的js
.pipe(gulp.dest(buildBasePath+'js'));//输出到js目录

总结

以上就是这篇文章的全部内容了,只能说入个门,还有更多的功能。多看高人博客吧或官网,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

(0)

相关推荐

  • 基于gulp合并压缩Seajs模块的方式说明

    之前的项目一直采用grunt来构建,然后用requirejs做模块化,requirejs官方有提供grunt的插件来做压缩合并.现在的项目切到了gulp,模块化用起了seajs,自然而然地也想到了模块合并压缩的问题. 然后一开始在解决这个问题的时候,并不是很顺利,在npm上并没有那种特别流行的专门用来做seajs合并压缩的gulp插件,虽然在seajs的github上也看了不少的issue,但是大多数都是只能将所有的模块文件合并成一个总的文件,这对于单页面的应用来说肯定没有问题,但是对于多页面的

  • Angular.js项目中使用gulp实现自动化构建以及压缩打包详解

    gulp介绍 基于流的前端自动化构建工具,利用gulp可以提高前端开发效率,特别是在前后端分离的项目中.使用gulp能完成以下任务: 压缩html.css和js 编译less或sass等 压缩图片 启动本地静态服务器 其他 目标 一键安装项目所有的依赖模块 一键安装项目所有的依赖库 代码检查确保严格语法正确 能将angularjs的html装换成js模块并且压缩到js文件中 将所有css文件合并压缩 将所有的js文件合并压缩 动态引入资源文件 拥有开发环境和生产环境两种打包方式 工具 npm基于

  • gulp安装以及打包合并的方法教程

    前言 gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成:使用她,我们不仅可以很愉快的编写代码,而且大大提高我们的工作效率. 安装.打包合并 1.安装node.js  下载地址: http://nodejs.cn/ 打开node.js 命令行,输入: node  -v ,有版本号,则正确安装. 2.安装淘宝镜像 :命令行输入 : npm install -g cnpm --registry=h

  • Centos8(最小化安装)全新安装Python3.8+pip的方法教程

    最小化安装Python8后安装Python3.8.1,网上找了一圈教程,没有一个能完全成功的.或者能安装成功,但pip无法使用.最后根据多个教程整理了一份命令,测试成功,安装使用完全没有问题. yum -y install wget yum -y install setup yum -y install perl yum install openssl-devel -y yum install zlib-devel -y yum -y groupinstall "Development tool

  • 在CentOS 7.2下安装Mono 5.0的方法教程

    前言 微软Build2017大会期间.NET领域的.NET core之外,就是Visual Studio For Mac,大家都知道Visual Studio For Mac 是基于Mono运行的,Mono 5.0也是闪亮登场,Mono 5.0是一个非常重要的里程碑版本,支持Windows 64位部署,还有支持PowerPC等,Mono 5.0 和微软的.NET 的可操作性,兼容性也得到了更好的统一,还有很多特性为C#的游戏之王Unity准备,今年的Unity平台会有全面的升级. Mono 5.

  • PHP 7安装调试工具Xdebug扩展的方法教程

    前言 说到PHP代码调试,对于有经验的PHPer,通过echo.print_r.var_dump函数,或PHP开发工具zend studio.editplus可解决大部分问题,但是对于PHP入门学习的童鞋来说有一定的难度,而且仅仅通过上述这些PHP调试手段,也很难准确发现PHP性能方面的问题,Xdebug是一个非常有用的PHP调试工具. 测试环境 LNMP 军哥一键包1.3版本 PHP 7.0.7 Xdebug 2.6 配置步骤 根据自身环境执行下列命令进行安装,切记不可原样复制执行 git c

  • mac下使用brew 安装mongodb的方法教程

    mac 系统常用的软件安装工具就是 homebrew 个人认为通过brew安装比较简单,下面介绍下如何安装 安装 mongodb wenxuezhangdeMacBook-Pro:~ wenxuezhang$ brew install mongodb 此图说明已经安装成功,安装的目录就是 /usr/local/Cellar/mongodb/3.2.9 第一次启动服务端,这里需要做一些准备工作. 默认mongodb 数据文件是放到根目录 data/db 文件夹下,如果没有这个文件,请自行创建. w

  • Mysql 5.7.19 免安装版配置方法教程详解(64位)

    官方网站下载mysql-5.7.19-winx64,注意对应系统64位或者32位,这里使用的是64位. 解压放置到本地磁盘.发现文件很大,大概是1.6G左右.删除lib文件夹下的.lib文件和debug文件夹下所有文件. 在主目录下创建my.ini文件,文件内容如下:(这里是简洁版,对应本机修改basedir和datadir的目录,根据需要可以自己扩充配置) [client] port=3306 default-character-set=utf8 [mysqld] basedir=D:\Jav

  • MySql安装启动两种方法教程详解

    mysql安装启动两种方法如下所示: 方法一(简单版): 1.cmd进入mysql安装的bin目录:mysqld.exe –install 2.net start mysql 服务启动(或者选择计算机->(右键)管理->服务和应用程序->服务->mysql右键启动服务) 3.mysql –uroot –p 回车 4.password留空 回车 方法二: 1.cmd进入到mysql安装目录bin,如:D:\MySQL Server 5.6\bin 2.mysqld --console

  • VS2017 安装打包插件的图文教程

    安装 打开VS2017:工具 --> 扩展和更新 --> 联机,搜索Microsoft Visual Studio 2017 Installer Projects,如下图: 在搜索中输入:Microsoft Visual Studio 2017 Installer Projects,搜索结果如下: 下载Microsoft Visual Studio 2017 Installer Projects,如下图: 按照提示,关闭所有VS窗口,自动安装,如下图: 选择[修改] 安装完成 看看安装日志,了

  • 利用rpm打包上线部署golang代码的方法教程

    前言: 经过一段时间的测试验证,决定使用RPM来做Golang服务的部署方式. 我们组关于代码的部署方式主要有这么几种,Python直接使用virtualenv + py code的方式来上线,Lua 是直接打包,Golang 是先编译生成二进制之后,联合配置文件直接打包. 但由于我们开发的Golang的代码很多是基础组件,需要很多节点都去安装部署.那么这时候自己编译打包跟RPM的方式其实很是想象的,那还不如复用公司内部成熟的基于rpm的上线系统. 下面话不多说了,来一起看看详细的介绍吧. rp

  • Tomcat下载安装并部署到IDEA的教程(附带idea两种热部署设置方法)

    使用Idea的时候,修改了代码,需要反复的重启Tomcat,查看效果,是不是贼烦?还记得刚上手idea的时候,瞎配置部署Tomcat,结果最后修改一个jsp都要重新启动服务器,我这金牛座程序员能忍?~这个时候就必须砸电脑了~这个时候就可以在项目中加入热部署,这样才会大大节省开发效率! @ Tomcat下载教程 其实下载贼简单,至于为什么要加教程二字~因为好听顺口得劲~ 官网地址-点击进入 http://tomcat.apache.org/ Tomcat安装教程 解压即可,安装就over了,但解压

随机推荐