gulp安装以及打包合并详解
本文主要给大家介绍了关于gulp实现人一个打包合并的方法教程,并分享了gulp打包js/css时合并成一个文件时的顺序的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。希望能帮助到大家。
前言
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目录
相关推荐:
Atas ialah kandungan terperinci gulp安装以及打包合并详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Mengambil dua tatasusunan sebagai input, cuba gabungkan atau gabungkan dua tatasusunan dan simpan hasilnya dalam tatasusunan ketiga. Logik untuk menggabungkan dua tatasusunan adalah seperti berikut-J=0,k=0untuk(i=0;i<o;i++){//mergingtwoarrays if(a[j]<=b[k]){ c[i] =a[j]; j++ }lain{ &nbs

Ia tidak disyorkan untuk menggabungkan 2.4g dan 5g kerana integrasi dwi-jalur mempunyai kelebihan dan kekurangan, sesetengah telefon mudah alih mungkin mengalami kesukaran menyambung ke WiFi dwi-jalur untuk penghala wayarles umum, jika tiada fungsi penolakan isyarat yang lemah; telefon mudah alih selepas integrasi dwi-jalur didayakan Ia mungkin sentiasa disambungkan ke jalur frekuensi 2.4G dan tidak akan bertukar kepada jalur frekuensi 2.4G yang lebih pantas sama sekali melainkan anda menghidupkan dan mematikan WIFI secara manual, jadi disyorkan untuk menyediakannya secara berasingan.

Kongsi kaedah pembungkusan projek PyCharm yang mudah dan mudah difahami Dengan populariti Python, semakin ramai pembangun menggunakan PyCharm sebagai alat utama untuk pembangunan Python. PyCharm ialah persekitaran pembangunan bersepadu yang berkuasa yang menyediakan banyak fungsi mudah untuk membantu kami meningkatkan kecekapan pembangunan. Salah satu fungsi penting ialah pembungkusan projek. Artikel ini akan memperkenalkan cara untuk membungkus projek dalam PyCharm dengan cara yang mudah dan mudah difahami, dan memberikan contoh kod khusus. Mengapa projek pakej? Dibangunkan dalam Python

Dalam pembangunan Java, kita selalunya perlu menggabungkan berbilang aliran input untuk memproses data. Fungsi SequenceInputStream ialah salah satu fungsi yang disediakan dalam Java untuk menggabungkan aliran input Ia boleh menggabungkan berbilang aliran input ke dalam aliran input yang lebih besar untuk memudahkan pemprosesan data kami. Jadi, bagaimana untuk menggunakan fungsi SequenceInputStream dalam Java untuk menggabungkan aliran input? Seterusnya, artikel ini akan memperkenalkan kaedah pelaksanaan khusus dan langkah berjaga-jaga melalui langkah terperinci. saya

Gambaran keseluruhan fungsi lanjutan tentang cara menggunakan HTML, CSS dan jQuery untuk melaksanakan paparan gabungan imej: Dalam reka bentuk web, paparan imej ialah pautan penting, dan paparan gabungan imej ialah salah satu teknik biasa untuk meningkatkan kelajuan memuatkan halaman dan pengalaman pengguna. Artikel ini akan memperkenalkan cara menggunakan HTML, CSS dan jQuery untuk melaksanakan fungsi lanjutan penggabungan dan paparan imej, dan menyediakan contoh kod khusus. 1. Reka letak HTML: Pertama, kita perlu mencipta bekas dalam HTML untuk memaparkan imej yang digabungkan. Anda boleh menggunakan di

Apabila bahasa pengaturcaraan Python menjadi semakin popular, semakin ramai pembangun mula menulis kod dalam Python. Tetapi dalam penggunaan sebenar, kita selalunya perlu membungkus kod ini dan mengedarkannya kepada orang lain untuk digunakan. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa Python untuk pembungkusan dan pengedaran kod. 1. Pembungkusan kod Python Dalam Python, kita boleh menggunakan alatan seperti setuptools dan distutils untuk membungkus kod kita. Alat ini boleh menukar fail Python, modul

Bermula dengan cepat: Teknik penggabungan dan pemisahan tatasusunan JSON dalam Java Dalam pembangunan perisian moden, format dan penghantaran data telah menjadi semakin penting. Antaranya, JSON (JavaScriptObjectNotation) ialah format data yang biasa digunakan, terutamanya sesuai untuk interaksi hadapan dan belakang dan penyimpanan data. Dalam pembangunan Java, kita sering perlu berurusan dengan objek JSON dan tatasusunan JSON. Artikel ini menerangkan cara untuk menggabungkan dan memisahkan tatasusunan JSON dalam Java, bersama-sama dengan petua dan contoh untuk melaksanakan operasi ini.

Fail CSV (Comma Separated Values) digunakan secara meluas untuk menyimpan dan menukar data dalam format yang mudah. Dalam banyak tugas pemprosesan data, terdapat keperluan untuk menggabungkan dua atau lebih fail CSV berdasarkan lajur tertentu. Nasib baik, ini boleh dicapai dengan mudah menggunakan perpustakaan Pandas dalam Python. Dalam artikel ini, kita akan belajar cara menggabungkan dua fail CSV mengikut lajur tertentu menggunakan Panda dalam Python. Apakah perpustakaan Pandas? Pandas ialah perpustakaan sumber terbuka untuk kawalan maklumat dan pemeriksaan dalam Python. Ia menyediakan alatan untuk bekerja dengan data berstruktur (seperti jadual, siri masa dan data berbilang dimensi) dan struktur data berprestasi tinggi. Panda digunakan secara meluas dalam kewangan, sains data, pembelajaran mesin dan bidang lain yang memerlukan manipulasi data.
