Last active
January 21, 2017 16:51
-
-
Save manuelj555/6d17280e1035c133007b49985489b411 to your computer and use it in GitHub Desktop.
Paquetes para trabajar con gulp+vuejs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var gulp = require('gulp'); | |
var babel = require('gulp-babel'); | |
var gulpif = require('gulp-if'); | |
var gutil = require('gulp-util'); | |
var concat = require('gulp-concat'); | |
var uglify = require('gulp-uglify'); | |
var nano = require("gulp-cssnano"); | |
var browserify = require('browserify'); | |
var babelify = require('babelify'); | |
var vueify = require('vueify'); | |
var source = require('vinyl-source-stream'); | |
var buffer = require('vinyl-buffer'); | |
gulp.task('js', function () { | |
/*return gulp.src([ | |
]) | |
//.pipe(babel()) | |
.pipe(gulpif(gutil.env.env == 'prod',uglify())) | |
.pipe(concat('app_head.js')) | |
.pipe(gulp.dest('web/compiled/js'));*/ | |
}); | |
gulp.task('js:vue', function () { | |
return browserify('app.js') | |
.transform(babelify, { presets: ['es2015'], plugins: ["transform-runtime"] }) | |
.transform(vueify) | |
.bundle().on("error", function(err){ gutil.log(err); this.emit('end'); }) | |
.pipe(source("xxx.js")) | |
.pipe(buffer()) | |
.pipe(gulpif(gutil.env.env == 'prod', uglify())) | |
.pipe(gulp.dest("./public/js/")); | |
}); | |
gulp.task('css', function () { | |
/*var dest = './web/compiled/css'; | |
return gulp.src([ | |
]) | |
.pipe(concat('styles.css')) | |
.pipe(gulpif(gutil.env.env == 'prod', nano())) | |
.pipe(gulp.dest(dest));*/ | |
}); | |
//gulp.task('watch', function(){ | |
//gulp.watch(['**/*.{css,scss}'], { cwd: './app/Resources/assets/'}, ['css', 'admin:css']); | |
//gulp.watch(['**/*.{css,scss}'], { cwd: './web/css/'}, ['css', 'admin:css']); | |
// gulp.watch([ | |
// 'js/app.js', | |
// 'js/**/*.js', | |
// 'vue/**/*.vue', | |
// 'vue/**/*.js' | |
// ], { cwd: './assets'}, ['js:vue']); | |
//}); | |
gulp.task('default', ['css', 'js', 'js:vue']); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var gulp = require("gulp"); | |
var sass = require("gulp-sass"); | |
var concat = require("gulp-concat"); | |
var nano = require("gulp-cssnano"); | |
var babel = require('gulp-babel'); | |
var gulpif = require('gulp-if'); | |
var gutil = require('gulp-util'); | |
var uglify = require('gulp-uglify'); | |
var sourcemaps = require('gulp-sourcemaps'); | |
var browserSync = require('browser-sync').create(); | |
var buildPath = './web/build/'; | |
var cssBuildPath = buildPath + 'css/'; | |
var jsBuildPath = buildPath + 'js/'; | |
var isProd = gutil.env.env == 'prod'; | |
gulp.task('sync', function () { | |
var url = gutil.env.server; | |
if (!url) { | |
gutil.error('Es necesario indicar la opción --server para iniciar Browser-Sync', url) | |
return; | |
} | |
gutil.log('Iniciando servidor Browser-Sync para la url:', url) | |
browserSync.init({ | |
proxy: gutil.env.server, | |
ui: false | |
}); | |
gulp.watch(['**/*.{css,scss}'], {cwd: 'app/Resources/assets/css/'}, ['css']); | |
}); | |
gulp.task('css', function () { | |
return gulp.src([ | |
'node_modules/bootstrap/dist/css/bootstrap.min.css', | |
'app/Resources/assets/css/**/*.{scss,css}', | |
]) | |
.pipe(gulpif(!isProd, sourcemaps.init())) | |
.pipe(sass()).on('error', sass.logError) | |
.pipe(concat(name)) | |
.pipe(gulpif(isProd, nano())) | |
.pipe(gulpif(!isProd, sourcemaps.write('.'))) | |
.pipe(gulp.dest(path || cssBuildPath)) | |
.pipe(browserSync.stream({match: '**/*.{scss,css}'})); | |
}); | |
gulp.task('js', function () { | |
return gulp.src([ | |
'node_modules/jquery/dist/jquery.min.js', | |
'node_modules/bootstrap/dist/js/bootstrap.min.js', | |
'node_modules/lodash/lodash.min.js', | |
'app/Resources/assets/js/**/*.js', | |
// 'app/Resources/assets/js/app.es6.js', | |
]) | |
.pipe(gulpif(!isProd, sourcemaps.init())) | |
.pipe(gulpif('**/*.es6.js', babel({presets: ['es2015']}))).on('error', function (err) { | |
gutil.log(err); | |
this.emit('end'); | |
}) | |
.pipe(concat('app.js')) | |
.pipe(gulpif(isProd, uglify())) | |
.pipe(gulpif(!isProd, sourcemaps.write('.'))) | |
.pipe(gulp.dest(jsBuildPath)); | |
}); | |
// gulp.task('copy_images', function () { | |
// return gulp.src( | |
// 'app/Resources/assets/img/**/*.{png,jpg,svg,gif}' | |
// ) | |
// .pipe(gulp.dest(buildPath + 'img/')); | |
// }); | |
gulp.task('watch', function () { | |
gulp.watch(['**/*.{css,scss}'], {cwd: 'app/Resources/assets/css/'}, ['css']); | |
gulp.watch(['**/*.js'], {cwd: 'app/Resources/assets/js/'}, ['js:frontend']); | |
}); | |
gulp.task('default', ['css', 'js']); | |
// gulp.task('build', ['default', 'images']); | |
gulp.task('build', ['default', 'images']); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"author": "Manuel aguirre", | |
"devDependencies": { | |
"babel-core": "^6.13.2", | |
"babel-loader": "^6.2.5", | |
"babel-plugin-transform-runtime": "^6.12.0", | |
"babel-preset-es2015": "^6.13.2", | |
"babel-runtime": "^6.11.6", | |
"babelify": "^7.3.0", | |
"browserify": "^13.1.0", | |
"css-loader": "^0.24.0", | |
"gulp": "^3.9.1", | |
"gulp-babel": "^6.1.2", | |
"gulp-concat": "^2.6.0", | |
"gulp-if": "^2.0.1", | |
"gulp-uglify": "^2.0.0", | |
"gulp-uglifycss": "^1.0.6", | |
"gulp-util": "^3.0.7", | |
"vinyl-source-stream": "^1.1.0", | |
"vinyl-buffer": "^1.0.0", | |
"vue-hot-reload-api": "^1.3.3", | |
"vue-html-loader": "^1.2.3", | |
"vue-loader": "^8.5.2", | |
"vue-style-loader": "^1.0.0", | |
"vueify": "^8.7.0", | |
"webpack": "^1.13.2" | |
}, | |
"dependencies": { | |
"vue": "^1.0.26" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Comandos gulp basicos:
Desarrollo:
Producción: