Maison interface Web js tutoriel Explication détaillée de l'installation, de l'emballage et de la fusion de gulp

Explication détaillée de l'installation, de l'emballage et de la fusion de gulp

Jan 18, 2018 am 10:48 AM
gulp 合并 打包

Cet article vous présente principalement le tutoriel sur la façon d'implémenter une méthode d'empaquetage et de fusion dans gulp, et partage la solution à l'ordre dans lequel gulp emballe js/css et les fusionne en un seul fichier. l'exemple de code dont vous avez besoin. Les amis peuvent s'y référer et suivre l'éditeur pour apprendre ensemble. J'espère que cela aide tout le monde.

Avant-propos

gulp est un outil pour créer du code dans le processus de développement front-end. C'est un outil pour créer des projets d'automatisation, il peut non seulement optimiser les ressources du site Web, mais également éliminer de nombreux projets répétitifs. les tâches pendant le processus de développement. Les tâches peuvent être complétées automatiquement en utilisant les bons outils ; en utilisant cela, nous pouvons non seulement écrire du code avec plaisir, mais également améliorer considérablement notre efficacité de travail.

Installation, packaging et fusion

1. Installez node.js Adresse de téléchargement : http://nodejs.cn/

Ouvrez la ligne de commande node.js et saisissez : node - v , s'il existe un numéro de version, il est correctement installé.

2. Installer l'image Taobao : Saisie de la ligne de commande :

npm install -g cnpm --registry=http://registry.npm.taobao.org
Copier après la connexion

Objectif : Rendre le téléchargement plus rapide.

3. Installez gulp globalement

cnpm install --global gulp
Copier après la connexion

4. Créez un répertoire, ouvrez le lecteur F et créez un dossier gulp.

Saisie de la ligne de commande :

f:

cd gulp
Copier après la connexion

5. Installez gulp local

cnpm install --save-dev gulp
Copier après la connexion

6. Créez le fichier package.json

cnpm init
Copier après la connexion

tout. le chemin Entrez simplement pour confirmer

7. Ouvrez ce répertoire gulp dans un éditeur Web, tel que hbuilder et webstorm.

Créez le fichier gulpfile.js dans le répertoire gulp, le point d'entrée pour l'exécution de gulp


8. Déterminez le type d'empaquetage et de compression. , html, js, css, img

9.js packaging

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目录下。
});
Copier après la connexion

10 Exécuter l'entrée node.js

gulp

rapportera ; une erreur, invitant gulp- Le composant concat n'est pas installé. Démarrez l'installation : cnpm install gulp-concat --save-dev

Exécutez à nouveau : gulp

Une erreur est à nouveau signalée, indiquant que le composant gulp-uglify n'est pas installé. Démarrez l'installation : cnpm install gulp-uglify --save-dev

Exécutez à nouveau : gulp

. . . . . . . . . . . . . . .

Après le succès, vous verrez

ici vous verrez terminé 'default', 'default' est l'entrée par défaut pour démarrer la tâche gulp.task . Si vous créez plusieurs tâches et modifiez le nom de la tâche tel que :

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'));
 
  });
Copier après la connexion

réexécutez : gulp

Résultat :

OK Il a été constaté que seule la tâche par défaut a été exécutée. Parce que c'est la seule entrée d'exécution de gulp par défaut.

Modifiez comme suit

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任务
});
Copier après la connexion

Si vous rencontrez un composant qui n'est pas installé, je pense que vous devriez savoir comment le faire fonctionner.

11. Compression d'image

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

12.compression html

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

13. Modifiez le problème de chemin par vous-même

Lorsque gulp package js. /css Résoudre la commande lors de la fusion en un seul fichier

1 Vous pouvez utiliser insert gulp-order.

2. Cela peut être écrit comme ceci :

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目录
Copier après la connexion

Recommandations associées :

Implémentation par Gulp du partage d'exemples de modularisation de pages Web statiques

Explication détaillée de nodejs pour implémenter un packaging gulp simple

Comment utiliser gulp pour réaliser la compression de fichiers et le chargement à chaud du navigateur

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment fusionner deux tableaux en langage C ? Comment fusionner deux tableaux en langage C ? Sep 10, 2023 am 09:05 AM

En prenant deux tableaux en entrée, essayez de fusionner ou de concaténer les deux tableaux et de stocker le résultat dans le troisième tableau. La logique de fusion de deux tableaux est la suivante : J=0,k=0for(i=0;i<o;i++){//mergingtwoarrays if(a[j]<=b[k]){ c[i] =a[j]; j++; }autre{ &nbs

Faut-il fusionner 2,4 g et 5 g ? Faut-il fusionner 2,4 g et 5 g ? Nov 24, 2022 am 10:27 AM

Il n'est pas recommandé de fusionner 2,4g et 5g ; parce que l'intégration double bande présente des avantages et des inconvénients, il peut être difficile pour certains téléphones mobiles de se connecter au WiFi double bande pour les routeurs sans fil généraux, s'il n'y a pas de fonction de rejet de signal faible ; , alors l'intégration double bande allumera le téléphone. Il peut être toujours connecté à la bande de fréquence 2,4 G et ne passera pas du tout à la bande de fréquence 2,4 G plus rapide à moins que vous n'activiez et désactiviez manuellement le WIFI, il est donc recommandé de configurez-le séparément.

Partagez un moyen simple de packager des projets PyCharm Partagez un moyen simple de packager des projets PyCharm Dec 30, 2023 am 09:34 AM

Partagez la méthode d'empaquetage de projet PyCharm simple et facile à comprendre. Avec la popularité de Python, de plus en plus de développeurs utilisent PyCharm comme outil principal pour le développement Python. PyCharm est un puissant environnement de développement intégré qui fournit de nombreuses fonctions pratiques pour nous aider à améliorer l'efficacité du développement. L’une des fonctions importantes est le packaging du projet. Cet article explique comment empaqueter des projets dans PyCharm d'une manière simple et facile à comprendre, et fournit des exemples de code spécifiques. Pourquoi packager des projets ? Développé en Python

Comment fusionner des flux d'entrée à l'aide de la fonction SequenceInputStream en Java Comment fusionner des flux d'entrée à l'aide de la fonction SequenceInputStream en Java Jun 26, 2023 pm 03:03 PM

Dans le développement Java, nous devons souvent combiner plusieurs flux d’entrée pour traiter les données. La fonction SequenceInputStream est l'une des fonctions fournies en Java pour fusionner des flux d'entrée. Elle peut fusionner plusieurs flux d'entrée en un flux d'entrée plus grand pour faciliter le traitement de nos données. Alors, comment utiliser la fonction SequenceInputStream en Java pour fusionner des flux d'entrée ? Ensuite, cet article présentera ses méthodes de mise en œuvre spécifiques et ses précautions à travers des étapes détaillées. je

Comment utiliser HTML, CSS et jQuery pour implémenter des fonctions avancées de fusion et d'affichage d'images Comment utiliser HTML, CSS et jQuery pour implémenter des fonctions avancées de fusion et d'affichage d'images Oct 27, 2023 pm 04:36 PM

Présentation des fonctions avancées d'utilisation de HTML, CSS et jQuery pour implémenter l'affichage de fusion d'images : dans la conception Web, l'affichage d'images est un lien important et l'affichage de fusion d'images est l'une des techniques courantes pour améliorer la vitesse de chargement des pages et améliorer l'expérience utilisateur. Cet article expliquera comment utiliser HTML, CSS et jQuery pour implémenter des fonctions avancées de fusion et d'affichage d'images, et fournira des exemples de code spécifiques. 1. Mise en page HTML : Tout d’abord, nous devons créer un conteneur en HTML pour afficher les images fusionnées. Vous pouvez utiliser di

Comment utiliser les expressions régulières Python pour l'empaquetage et la distribution de code Comment utiliser les expressions régulières Python pour l'empaquetage et la distribution de code Jun 23, 2023 am 09:31 AM

Alors que le langage de programmation Python devient de plus en plus populaire, de plus en plus de développeurs commencent à écrire du code en Python. Mais dans la réalité, nous devons souvent regrouper ces codes et les distribuer à d’autres pour qu’ils les utilisent. Cet article explique comment utiliser les expressions régulières Python pour l'empaquetage et la distribution de code. 1. Packaging de code Python En Python, nous pouvons utiliser des outils tels que setuptools et distutils pour empaqueter notre code. Ces outils peuvent convertir des fichiers Python, des modules

Commencez rapidement : techniques de fusion et de fractionnement de tableaux JSON en Java. Commencez rapidement : techniques de fusion et de fractionnement de tableaux JSON en Java. Sep 06, 2023 am 10:21 AM

Commencez rapidement : techniques de fusion et de division de tableaux JSON en Java Dans le développement de logiciels modernes, le format et la transmission des données sont devenus de plus en plus importants. Parmi eux, JSON (JavaScriptObjectNotation) est un format de données couramment utilisé, particulièrement adapté à l'interaction front-end et back-end et au stockage de données. Dans le développement Java, nous devons souvent gérer des objets JSON et des tableaux JSON. Cet article explique comment fusionner et diviser des tableaux JSON en Java, ainsi que des conseils et des exemples pour implémenter ces opérations.

Comment fusionner deux fichiers CSV par colonnes spécifiques à l'aide de Pandas en Python ? Comment fusionner deux fichiers CSV par colonnes spécifiques à l'aide de Pandas en Python ? Sep 08, 2023 pm 02:01 PM

Les fichiers CSV (Comma Separated Values) sont largement utilisés pour stocker et échanger des données dans un format simple. Dans de nombreuses tâches de traitement de données, il est nécessaire de fusionner deux ou plusieurs fichiers CSV en fonction de colonnes spécifiques. Heureusement, cela peut être facilement réalisé en utilisant la bibliothèque Pandas en Python. Dans cet article, nous apprendrons comment fusionner deux fichiers CSV par colonnes spécifiques à l'aide de Pandas en Python. Qu'est-ce que la bibliothèque Pandas ? Pandas est une bibliothèque open source pour le contrôle et l'inspection des informations en Python. Il fournit des outils pour travailler avec des données structurées (telles que des données tabulaires, des séries chronologiques et multidimensionnelles) et des structures de données hautes performances. Pandas est largement utilisé dans la finance, la science des données, l'apprentissage automatique et d'autres domaines nécessitant une manipulation de données.

See all articles