源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2022-06-16 08:21 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:gulp安装以及打包合并的方法教程
[b]前言[/b] gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器;她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成;使用她,我们不仅可以很愉快的编写代码,而且大大提高我们的工作效率。 [b]安装、打包合并[/b] [b]1.安装node.js  下载地址: http://nodejs.cn/[/b] 打开node.js 命令行,输入: [code]node  -v [/code],有版本号,则正确安装。 [b]2.安装淘宝镜像 :命令行输入 :[/b]
npm install -g cnpm --registry=http://registry.npm.taobao.org
目的:使下在速度更快。 [b]3.全局安装gulp[/b]
cnpm install --global gulp
[b]4.创建目录,打开F盘,创建gulp文件夹。[/b] 命令行输入 :
f:

cd gulp
[b]5.安装本地gulp[/b]
cnpm install --save-dev gulp
[b]6.创建package.json文件[/b]
cnpm init 
一路enter确定就行 [b]7.web编辑器打开此gulp目录,如hbuilder、webstorm。[/b] 在gulp目录下创建gulpfile.js文件,gulp运行的入口 [img]http://files.jb51.net/file_images/article/201711/2017111984637636.png?2017101984646[/img] [b]8.确定何种打包压缩,html、js、css、img[/b] [b]9.js打包[/b]
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目录下。
});
[b]10.运行;node.js输入[/b] gulp 会有报错,提示 gulp-concat组件没有安装。开始安装 :[code]cnpm install gulp-concat --save-dev[/code] 再次运行 :gulp 再次报错,提示gulp-uglify组件没有安装。开始安装 :[code]cnpm install gulp-uglify --save-dev[/code] 再次运行 :gulp 。。。。。。。。。。。。。。。  成功之后会 [img]http://files.jb51.net/file_images/article/201711/2017111984904934.png?2017101984911[/img] 这里会看到 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 结果: [img]http://files.jb51.net/file_images/article/201711/2017111984941620.png?2017101984953[/img] 会发现只运行了 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任务
});
如果遇到什么组件没有安装的话,想你应该知道怎么操作了。 [b]11.图片压缩[/b]
var imagemin = require('gulp-imagemin');
gulp.task('img', function() {
 return gulp.src('imgs/*.png')
 .pipe(imagemin())
 .pipe(gulp.dest('miniImg'));
});
[b]12.html压缩[/b]
var htmlmin = require('gulp-htmlmin');
gulp.task('html', function() {
 return gulp.src('../*.html')
 .pipe(htmlmin({collapseWhitespace: true}))
 .pipe(gulp.dest('../'));
});
[b]13.路径问题自己修改[/b] [b]gulp打包js/css时合并成一个文件时的顺序解决[/b] 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目录
[b]总结[/b] 以上就是这篇文章的全部内容了,只能说入个门,还有更多的功能。多看高人博客吧或官网,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对编程素材网的支持。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部