Skip to content

Commit ccb9f10

Browse files
committed
Support es6 classes in gulp build
Based on https://gist.github.com/danharper/3ca2273125f500429945
1 parent 92bb285 commit ccb9f10

File tree

3 files changed

+23
-11
lines changed

3 files changed

+23
-11
lines changed

.jshint

+3-2
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,6 @@
1717
"strict": true,
1818
"globals": {
1919
"define": true
20-
}
21-
}
20+
},
21+
"esversion": 6
22+
}

gulpfile.js

+13-7
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
'use strict';
22

33
var gulp = require('gulp');
4-
var browserify = require('gulp-browserify');
4+
var babel = require('babelify');
5+
var browserify = require('browserify');
6+
var source = require('vinyl-source-stream');
7+
var buffer = require('vinyl-buffer');
58
var cssmin = require('gulp-cssmin');
69
var download = require('gulp-download');
710
var exec = require('child_process').exec;
@@ -119,13 +122,16 @@ gulp.task('demo', function () {
119122
buildStyles('demo');
120123
buildStyles('bootstrap-multiselect');
121124

125+
var bundle = browserify('./demo/src/App.js', {
126+
debug: true
127+
}).transform(babel.configure({
128+
presets: ['es2015', 'react']
129+
}));
130+
122131
// scripts
123-
gulp.src('./demo/src/App.js')
124-
.pipe(browserify({
125-
debug: true,
126-
transform: ['reactify']
127-
}))
128-
.pipe(rename('demo.debug.js'))
132+
bundle.bundle()
133+
.pipe(source('demo.debug.js'))
134+
.pipe(buffer())
129135
.pipe(gulp.dest('./demo/www/js/'))
130136
.pipe(uglify())
131137
.pipe(rename('demo.min.js'))

package.json

+7-2
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,12 @@
2727
"react": ">=15.0.0"
2828
},
2929
"devDependencies": {
30+
"babel-preset-es2015": "^6.24.1",
31+
"babel-preset-react": "^6.24.1",
32+
"babelify": "^7.3.0",
3033
"bootstrap": "^3.3.7",
34+
"browserify": "^14.3.0",
3135
"gulp": "^3.9.1",
32-
"gulp-browserify": "^0.5.1",
3336
"gulp-connect": "^5.0.0",
3437
"gulp-cssmin": "^0.1.7",
3538
"gulp-download": "0.0.1",
@@ -43,7 +46,9 @@
4346
"jsxhint": "^0.15.1",
4447
"react-bootstrap": "^0.30.3",
4548
"react-dom": "^15.3.1",
46-
"reactify": "^1.1.1"
49+
"reactify": "^1.1.1",
50+
"vinyl-buffer": "^1.0.0",
51+
"vinyl-source-stream": "^1.1.0"
4752
},
4853
"keywords": [
4954
"react",

0 commit comments

Comments
 (0)