SORU
28 Temmuz 2014, PAZARTESİ


Nasıl çıktı uglify için Yudum Browserify?

Browserify çıktı uglify için Yudum denedim, ama çalışmıyor.

gulpfile.js

var browserify = require('browserify');
var gulp = require('gulp');
var uglify = require('gulp-uglify');
var source = require('vinyl-source-stream');

gulp.task('browserify', function() {
    return browserify('./source/scripts/app.js')
        .bundle()
        .pipe(source('bundle.js'))
        .pipe(uglify()) // ???
        .pipe(gulp.dest('./build/scripts'));
});

Ben anladığım kadarıyla edemiyor aşağıdaki gibi adım adım yapmak. Sırasını korumak için bir boru yapmak gerekir?

gulp.task('browserify', function() {
    return browserify('./source/scripts/app.js')
        .bundle()
        .pipe(source('bundle.js'))
        .pipe(uglify()) // ???
        .pipe(gulp.dest('./source/scripts'));
});

gulp.task('scripts', function() {
    return grunt.src('./source/scripts/budle.js')
        .pipe(uglify())
        .pipe(gulp.dest('./build/scripts'));
});

gulp.task('default', function(){
    gulp.start('browserify', 'scripts');
});

CEVAP
13 AĞUSTOS 2014, ÇARŞAMBA


Aslında, bir şey dışında: çok yakınlaştınız

  • bu dönüştürmek gerekirakışvinil dosyası gulp-uglify (ve en gulp eklentileri) çalışır çünkü vinyl-buffer source() tarafından verilen nesnetamponluvinil nesneleri dosya

Bunun yerine size lazım olur diye

var browserify = require('browserify');
var gulp = require('gulp');
var uglify = require('gulp-uglify');
var source = require('vinyl-source-stream');
var buffer = require('vinyl-buffer');

gulp.task('browserify', function() {
  return browserify('./source/scripts/app.js')
    .bundle()
    .pipe(source('bundle.js')) // gives streaming vinyl file object
    .pipe(buffer()) // <----- convert from streaming to buffered vinyl file object
    .pipe(uglify()) // now gulp-uglify works 
    .pipe(gulp.dest('./build/scripts'));
});

Ya da, her ikisi de idare eder vinyl-transform yerine kullanmak için seçebilirsinizakışvetamponluvinil yani senin için nesne dosyası

var gulp = require('gulp');
var browserify = require('browserify');
var transform = require('vinyl-transform');
var uglify = require('gulp-uglify');


gulp.task('build', function () {

  // use `vinyl-transform` to wrap the regular ReadableStream returned by `b.bundle();` with vinyl file object
  // so that we can use it down a vinyl pipeline
  // while taking care of both streaming and buffered vinyl file objects
  var browserified = transform(function(filename) {
    // filename = './source/scripts/app.js' in this case
    return browserify(filename)
      .bundle();
  });

  return gulp.src(['./source/scripts/app.js']) // you can also use glob patterns here to browserify->uglify multiple files
    .pipe(browserified)
    .pipe(uglify())
    .pipe(gulp.dest('./build/scripts'));
});

Yukarıdaki tarifler de aynı şeyi başaracaktır.

Senin borularını yönetmek yapmak için, onun sadece (düzenli NodeJS Dere ve dosya nesneleri ve tamponlu vinil dosya nesneleri akış vinil arasında dönüştürme)

Edit: En gulp browserify kullanarak ve farklı yaklaşımları ile ilgili uzun bir makale yazdım: https://medium.com/@sogko/gulp-browserify-the-gulp-y-way-bb359b3f9623

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Matt Stokes

    Matt Stokes

    22 Ocak 2008
  • Virtual Riot

    Virtual Riot

    19 Mayıs 2011
  • VitalyzdTv

    VitalyzdTv

    7 AĞUSTOS 2011