Skip to content

Instantly share code, notes, and snippets.

@kciter
Created July 29, 2016 05:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kciter/6228a168c84bc7af4d651a3f7dad5097 to your computer and use it in GitHub Desktop.
Save kciter/6228a168c84bc7af4d651a3f7dad5097 to your computer and use it in GitHub Desktop.
gulp 설정
'use strict';
var gulp = require('gulp'),
gutil = require('gulp-util'),
rename = require('gulp-rename'),
glob = require('glob'),
sass = require('gulp-sass'),
cleanCSS = require('gulp-clean-css'),
babelify = require('babelify'),
browserify = require('browserify'),
source = require('vinyl-source-stream'),
buffer = require('vinyl-buffer'),
uglify = require('gulp-uglify'),
concat = require('gulp-concat');
var src = './src';
var dist = './dist';
var paths = {
JS: [src+'/js/*.js', src+'/js/**/*.js'],
SCSS: [src+'/scss/*.scss', src+'/scss/**/*.scss']
};
gulp.task('compile-js', function() {
var browserified = browserify({
extensions: ['js', '.jsx'],
debug: true,
entries: ['./static/src/js/app.js'],
paths: paths.JS
})
.transform(babelify, {
presets: ["es2015", "react"],
plugins: ["react-html-attrs"]
})
.bundle()
.on('error', gutil.log)
.pipe(source('bundle.js'))
.pipe(gulp.dest(dist+'/js'));
return browserified
.pipe(buffer())
.pipe(uglify())
.pipe(rename('bundle.min.js'))
.pipe(gulp.dest(dist+'/js'));
});
gulp.task('compile-sass', function() {
var sassCompiled = gulp.src(paths.SCSS)
.pipe(sass().on('error', sass.logError))
.pipe(rename('bundle.css'))
.pipe(gulp.dest(dist+'/css'));
return sassCompiled.pipe(cleanCSS({compatibility: 'ie8'}))
.pipe(rename('bundle.min.css'))
.pipe(gulp.dest(dist+'/css'));
});
gulp.task('watch', function() {
gulp.watch(paths.JS, ['compile-js']);
gulp.watch(paths.SCSS, ['compile-sass']);
});
gulp.task('default', ['compile-js', 'compile-sass']);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment