웹 프론트엔드 JS 튜토리얼 gulp 설치와 패키징, 병합에 대한 자세한 설명

gulp 설치와 패키징, 병합에 대한 자세한 설명

Jan 18, 2018 am 10:48 AM
gulp 병합

이 글에서는 주로 gulp에서 패키징 및 병합 방법을 구현하는 방법에 대한 튜토리얼을 소개하고, gulp에서 js/css를 패키징하여 하나의 파일로 병합할 때의 순서에 대한 솔루션을 샘플 코드를 통해 자세히 소개합니다. .필요한 친구들은 참고자료로 활용하고, 편집자를 따라가며 함께 배워보세요. 그것이 모두에게 도움이 되기를 바랍니다.

머리말

gulp는 프런트엔드 개발 프로세스에서 코드를 작성하는 도구입니다. 이는 웹 사이트 리소스를 최적화할 수 있을 뿐만 아니라 개발 프로세스 중 많은 반복 작업을 자동으로 완료할 수 있습니다. ; 올바른 도구를 사용하면 코드를 즐겁게 작성할 수 있을 뿐만 아니라 작업 효율성도 크게 향상됩니다.

설치, 패키징 및 병합

1. node.js 설치 다운로드 주소: http://nodejs.cn/

node.js 명령줄을 열고 다음을 입력하세요. node -v, 버전 번호가 있으면 올바르게 설치되었습니다.

2. Taobao 이미지 설치: 명령줄 입력:

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
로그인 후 복사

끝까지 입력하여 확인하세요

7. , 웹스톰.

gulp 실행의 진입점인 gulp 디렉터리에 gulpfile.js 파일을 생성합니다


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

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

성공하면

'default'가 완료된 것을 볼 수 있습니다. 'default'는 gulp.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'));
 
  });
로그인 후 복사

Rerun: gulp

Result:

기본 작업 작업만 실행되는 것을 확인할 수 있습니다. 이것이 유일한 기본 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.

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目录
로그인 후 복사

관련 권장 사항:

Gulp는 정적 웹 페이지 모듈화 예제 공유를 구현합니다.

간단한 gulp 패키징을 구현하기 위한 nodejs에 대한 자세한 설명

gulp 사용 방법 파일 압축 및 브라우저 핫 로딩을 달성하기

위 내용은 gulp 설치와 패키징, 병합에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

C 언어에서 두 배열을 병합하는 방법은 무엇입니까? C 언어에서 두 배열을 병합하는 방법은 무엇입니까? Sep 10, 2023 am 09:05 AM

두 배열을 입력으로 사용하여 두 배열을 병합하거나 연결하고 결과를 세 번째 배열에 저장해 보세요. 두 배열을 병합하는 논리는 다음과 같습니다. J=0,k=0for(i=0;i<o;i++){//mergingtwoarrays if(a[j]<=b[k]){ c[i] =a[j]; }else{ &nbs

PyCharm 프로젝트를 패키징하는 쉬운 방법 공유 PyCharm 프로젝트를 패키징하는 쉬운 방법 공유 Dec 30, 2023 am 09:34 AM

간단하고 이해하기 쉬운 PyCharm 프로젝트 패키징 방법을 공유하세요. Python의 인기로 인해 점점 더 많은 개발자가 PyCharm을 Python 개발의 주요 도구로 사용하고 있습니다. PyCharm은 개발 효율성을 향상시키는 데 도움이 되는 다양한 편리한 기능을 제공하는 강력한 통합 개발 환경입니다. 중요한 기능 중 하나는 프로젝트 패키징입니다. 이 글에서는 간단하고 이해하기 쉬운 방식으로 PyCharm에서 프로젝트를 패키징하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 왜 패키지 프로젝트인가? Python으로 개발됨

2.4g과 5g을 합쳐야 할까요? 2.4g과 5g을 합쳐야 할까요? Nov 24, 2022 am 10:27 AM

듀얼 밴드 통합에는 장단점이 있으므로 2.4g와 5g를 병합하는 것은 권장되지 않습니다. 신호 거부 기능이 약한 경우 일부 휴대폰은 일반 무선 라우터의 듀얼 밴드 WiFi에 연결하기 어려울 수 있습니다. , 그러면 듀얼 밴드 통합으로 전화기가 켜집니다. 항상 2.4G 주파수 대역에 연결되어 있을 수 있으며 WIFI를 수동으로 켜고 끄지 않는 한 더 빠른 2.4G 주파수 대역으로 전혀 전환되지 않으므로 다음을 수행하는 것이 좋습니다. 별도로 설정하세요.

HTML, CSS 및 jQuery를 사용하여 이미지 병합 및 표시의 고급 기능을 구현하는 방법 HTML, CSS 및 jQuery를 사용하여 이미지 병합 및 표시의 고급 기능을 구현하는 방법 Oct 27, 2023 pm 04:36 PM

HTML, CSS 및 jQuery를 사용하여 이미지 병합 표시를 구현하는 방법에 대한 고급 기능 개요: 웹 디자인에서 이미지 표시는 중요한 링크이며, 이미지 병합 표시는 페이지 로딩 속도와 사용자 경험을 향상시키는 일반적인 기술 중 하나입니다. 이 기사에서는 HTML, CSS 및 jQuery를 사용하여 이미지 병합 및 표시의 고급 기능을 구현하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1. HTML 레이아웃: 먼저 병합된 이미지를 표시하기 위해 HTML로 컨테이너를 만들어야 합니다. 당신은 디를 사용할 수 있습니다

Java에서 SequenceInputStream 함수를 사용하여 입력 스트림을 병합하는 방법 Java에서 SequenceInputStream 함수를 사용하여 입력 스트림을 병합하는 방법 Jun 26, 2023 pm 03:03 PM

Java 개발에서는 데이터를 처리하기 위해 여러 입력 스트림을 결합해야 하는 경우가 많습니다. SequenceInputStream 함수는 입력 스트림을 병합하기 위해 Java에서 제공되는 함수 중 하나입니다. 여러 입력 스트림을 더 큰 입력 스트림으로 병합하여 데이터 처리를 용이하게 할 수 있습니다. 그렇다면 Java에서 SequenceInputStream 함수를 사용하여 입력 스트림을 병합하는 방법은 무엇입니까? 다음으로, 이 글에서는 구체적인 구현 방법과 주의사항을 세부 단계를 통해 소개하겠습니다. 나

빠르게 시작하기: Java의 JSON 배열 병합 및 분할 기술. 빠르게 시작하기: Java의 JSON 배열 병합 및 분할 기술. Sep 06, 2023 am 10:21 AM

빠르게 시작하기: Java의 JSON 배열 병합 및 분할 기술 현대 소프트웨어 개발에서는 데이터 형식과 전송이 점점 더 중요해지고 있습니다. 그중 JSON(JavaScriptObjectNotation)은 일반적으로 사용되는 데이터 형식으로 특히 프런트엔드 및 백엔드 상호 작용과 데이터 저장에 적합합니다. Java 개발에서는 JSON 객체와 JSON 배열을 처리해야 하는 경우가 많습니다. 이 문서에서는 Java에서 JSON 배열을 병합하고 분할하는 방법과 이러한 작업을 구현하기 위한 팁 및 예제를 설명합니다.

코드 패키징 및 배포에 Python 정규식을 사용하는 방법 코드 패키징 및 배포에 Python 정규식을 사용하는 방법 Jun 23, 2023 am 09:31 AM

Python 프로그래밍 언어가 점점 대중화되면서 점점 더 많은 개발자가 Python으로 코드를 작성하기 시작하고 있습니다. 그러나 실제 사용에서는 이러한 코드를 패키징하여 다른 사람이 사용할 수 있도록 배포해야 하는 경우가 많습니다. 이 기사에서는 코드 패키징 및 배포에 Python 정규식을 사용하는 방법을 소개합니다. 1. Python 코드 패키징 Python에서는 setuptools 및 distutils와 같은 도구를 사용하여 코드를 패키징할 수 있습니다. 이 도구는 Python 파일, 모듈을 변환할 수 있습니다.

Python에서 Pandas를 사용하여 특정 열로 두 개의 CSV 파일을 병합하는 방법은 무엇입니까? Python에서 Pandas를 사용하여 특정 열로 두 개의 CSV 파일을 병합하는 방법은 무엇입니까? Sep 08, 2023 pm 02:01 PM

CSV(Comma Separated Values) 파일은 간단한 형식으로 데이터를 저장하고 교환하는 데 널리 사용됩니다. 많은 데이터 처리 작업에서는 특정 열을 기반으로 두 개 이상의 CSV 파일을 병합해야 합니다. 다행스럽게도 이는 Python의 Pandas 라이브러리를 사용하여 쉽게 달성할 수 있습니다. 이 기사에서는 Python에서 Pandas를 사용하여 특정 열을 기준으로 두 개의 CSV 파일을 병합하는 방법을 알아봅니다. Pandas 라이브러리란 무엇인가요? Pandas는 Python의 정보 제어 및 검사를 위한 오픈 소스 라이브러리입니다. 이는 구조화된 데이터(예: 표 형식, 시계열, 다차원 데이터) 및 고성능 데이터 구조 작업을 위한 도구를 제공합니다. Pandas는 금융, 데이터 과학, 기계 학습 및 데이터 조작이 필요한 기타 분야에서 널리 사용됩니다.

See all articles