glup 기본 동작
glup
glup 설치
$ npm install --global gulp-cli
$ npm install --save-dev gulp
각종 플러그 인 설치
npm install --save gulp // gulp
npm install --save gulp-imagemin //
npm install --save gulp-minify-css // css
npm install --save gulp-ruby-sass //sass
npm install --save gulp-jshint //js
npm install --save gulp-uglify //js
npm install --save gulp-concat //
npm install --save gulp-rename //
npm install --save png-sprite //png
npm install --save gulp-htmlmin // html
npm install --save gulp-clean //
npm install --save browser-sync //
npm install --save gulp-shell // shell
npm install --save gulp-ssh //
npm install --save run-sequence //task
glupfile. js 만 들 기
# 1
var gulp = require('gulp');
var pug = require('gulp-pug');
var less = require('gulp-less');
var minifyCSS = require('gulp-csso');
var concat = require('gulp-concat');
var sourcemaps = require('gulp-sourcemaps');
gulp.task('html', function(){
return gulp.src('client/templates/*.pug')
.pipe(pug())
.pipe(gulp.dest('build/html'))
});
gulp.task('css', function(){
return gulp.src('client/templates/*.less')
.pipe(less())
.pipe(minifyCSS())
.pipe(gulp.dest('build/css'))
});
gulp.task('js', function(){
return gulp.src('client/javascript/*.js')
.pipe(sourcemaps.init())
.pipe(concat('app.min.js'))
.pipe(sourcemaps.write())
.pipe(gulp.dest('build/js'))
});
gulp.task('default', [ 'html', 'css', 'js' ]);
glup 문법
glup.src()
전 환 된 파일 gulp.src(globs[, options])
globs : String or Array
glup.src('client/template/*.jade')
.pipe(jade())
.pipe(minify())
.pipe(glup.dest('build/minifiled_templates'))
//
client/
a.js
bob.js
bad.js
glup.src(['client/*.js', '!client/b*.js', 'client/bad.js'])
// .js , b , bad.js
glup.dest()
데이터 흐름 이 파일 로 바 뀌 었 습 니 다 gulp.dest(path[, options])
path: String or Function
gulp.src('./client/templates/*.jade')
.pipe(jade())
.pipe(gulp.dest('./build/templates')) //
.pipe(minify())
.pipe(gulp.dest('./build/minified_templates')); //
glup.task()
하나의 임무 성명 gulp.task(name [, deps, fn])
name: String
deps: Array
fn: Function
gulp.task('somename', function() {
// Do ...
});
gulp.task('mytask', ['array', 'of', 'task', 'names'], function() {
// Do stuff
});
glup.watch()
감시 파일 의 변동 gulp.watch(glob[, opts], tasks)
glob: String or Array
tasks: Array
var watcher = gulp.watch('js/**/*.js', ['uglify','reload']);
watcher.on('change', function(event) {
console.log('File ' + event.path + ' was ' + event.type + ', running tasks...');
});
glup 사용 사례
+ demo1
+ dist
+ css
- merge.min.css
+ js
- merge.min.js
+ imgs
- 1.png
- 2.png
- index.html
+ src
+ css
- a.css
- b.css
+ js
- a.js
- b.js
+ imgs
- 1.png
- 2.png
- index.html
# glupfile.js
var gulp = require('gulp');
//
var minifycss = require('gulp-minify-css'), // CSS
uglify = require('gulp-uglify'), // js
concat = require('gulp-concat'), //
rename = require('gulp-rename'), //
clean = require('gulp-clean'), //
minhtml = require('gulp-htmlmin'), //html
jshint = require('gulp-jshint'), //js
imagemin = require('gulp-imagemin'); //
gulp.task('html', function() {
return gulp.src('src/*.html')
.pipe(minhtml({collapseWhitespace: true}))
.pipe(gulp.dest('dist'));
});
gulp.task('css', function(argument) {
gulp.src('src/css/*.css')
.pipe(concat('merge.css'))
.pipe(rename({
suffix: '.min'
}))
.pipe(minifycss())
.pipe(gulp.dest('dist/css/'));
});
gulp.task('js', function(argument) {
gulp.src('src/js/*.js')
.pipe(jshint())
.pipe(jshint.reporter('default'))
.pipe(concat('merge.js'))
.pipe(rename({
suffix: '.min'
}))
.pipe(uglify())
.pipe(gulp.dest('dist/js/'));
});
gulp.task('img', function(argument){
gulp.src('src/imgs/*')
.pipe(imagemin())
.pipe(gulp.dest('dist/imgs'));
});
gulp.task('clear', function(){
gulp.src('dist/*',{read: false})
.pipe(clean());
});
gulp.task('build', ['html', 'css', 'js', 'img']);
$ glup build
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.