1 |
|
2 | var gulp = require('gulp');
|
3 | var rename = require('gulp-rename');
|
4 | var uglify = require('gulp-uglify');
|
5 | var webpack = require('webpack-stream');
|
6 |
|
7 | function makeWebpackedFiles (entryPath, outputPath, autoInject) {
|
8 | var cssLoader = autoInject ? 'style!css' : 'css';
|
9 | var lessLoader = autoInject ? 'style!css!less' : 'css!less';
|
10 |
|
11 | return gulp.src(entryPath)
|
12 | .pipe(webpack({
|
13 | output: {
|
14 | filename: 'webpack.js'
|
15 | },
|
16 | module: {
|
17 | loaders: [
|
18 | { test: /\.css$/, loader: cssLoader },
|
19 | { test: /\.less$/, loader: lessLoader },
|
20 | { test: /\.html$/, loader: 'html' },
|
21 | { test: /\.json$/, loader: 'json' }
|
22 | ]
|
23 | },
|
24 |
|
25 |
|
26 | })).on('error', function (err) {
|
27 | console.log(err);
|
28 | process.exit(1);
|
29 | })
|
30 | .pipe(gulp.dest(outputPath)).on('end', function () {
|
31 | gulp.src(outputPath + 'webpack.js')
|
32 | .pipe(rename({ extname: '.min.js' }))
|
33 | .pipe(uglify())
|
34 | .pipe(gulp.dest(outputPath));
|
35 | });
|
36 | }
|
37 |
|
38 | module.exports = makeWebpackedFiles;
|