How to get sourcemaps for gulp+babel+browserify+uglify

AriehGlazer

I am using gulp to bundle browserify+babelify with uglifyjs. O However, the sourcemaps generated from my project only give me the bundled version, not the bundled version.

Here is my setup:

var gulp       = require('gulp'),
    source     = require('vinyl-source-stream'),
    browserify = require('browserify'),
    gutil      = require('gulp-util'),
    buffer     = require('vinyl-buffer'),
    sourcemaps = require('gulp-sourcemaps'),
    uglify     = require('gulp-uglify'),
    file       = 'index.js';

gulp.task('build', function(){
    return browserify({
        entries: [file],
        transform: ["babelify"]
      })
    .bundle()
    .pipe(source(file))
    .pipe(buffer())
    .pipe(sourcemaps.init({loadMaps: true}))
    .pipe(uglify())
    .pipe(sourcemaps.write('./'))
    .pipe(gulp.dest('./public/js'))
    .pipe(gutil.noop())
})

Is there a way for me to create a build that bundles babel=>browserify=>uglify and still return me maps to my pre-babel files?

I also don't mind not using gulp (I actually prefer grunt but this setup used to work for me in the past).

Nir

First of all you need to set browserify to generate source maps by setting the debug option to true, then if you want the pre babelify source maps you need to configure babelify to generate source maps:

   var gulp       = require('gulp'),
    source     = require('vinyl-source-stream'),
    browserify = require('browserify'),
    gutil      = require('gulp-util'),
    buffer     = require('vinyl-buffer'),
    sourcemaps = require('gulp-sourcemaps'),
    uglify     = require('gulp-uglify'),
    babelify   = require('babelify')
    file       = 'index.js';

gulp.task('build', function(){
    return browserify(file,{debug:true}).transform(babelify, {presets: ["es2015", "react"],sourceMaps:true})
    .bundle()
    .pipe(source(file))
    .pipe(buffer())
    .pipe(sourcemaps.init({loadMaps: true}))
    .pipe(uglify())
    .pipe(sourcemaps.write('./'))
    .pipe(gulp.dest('./build/js'))
    .pipe(gutil.noop())
})

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Java

How to uglify output with Browserify in Gulp?

From Dev

gulp: uglify and sourcemaps

From Dev

Gulp Browserify SourceMaps

From Dev

Gulp sourcemaps with TypeScript and Babel

From Dev

gulp - uglify js files with browserify?

From Dev

Debugging variables not working with gulp sourcemaps + uglify

From Dev

Browserify and Babel gulp tasks

From Dev

How to use both 'gulp-babel' and 'gulp-browserify'

From Dev

gulp-sourcemaps not working with babel 6

From Dev

How to use Gulp and Babelify (Babel + Browserify) to compile singletons and classes

From Dev

Build React components with Gulp, Browserify and Babel

From Dev

ReactJs.Net, Gulp, Babel, Browserify MVC

From Dev

add babel/polyfill in Gulp with Babelify and Browserify

From Dev

ReactJs.Net, Gulp, Babel, Browserify MVC

From Dev

add babel/polyfill in Gulp with Babelify and Browserify

From Dev

How to do this in gulp browserify?

From Dev

How to use coffescript with uglify in gulp?

From Dev

Grunt concat + uglify with sourcemaps

From Dev

How to setup an app using browserify, babel, eslint, react/jsx, and jest (no gulp/grunt)?

From Dev

how to debug gulp-sourcemaps not doing anything?

From Java

Browserify, Babel 6, Gulp - Unexpected token on spread operator

From Dev

How do I get React to work with Babel and Gulp?

From Java

How do I generate sourcemaps when using babel and webpack?

From Dev

Gulp Sourcemaps path

From Dev

Gulp inline sourcemaps not working

From Dev

Gulp Sourcemaps path

From Dev

How to have sourcemaps include all my LESS files with gulp

From Dev

How to get sourcemaps working for React Css Modules?

From Dev

How can I get notified of errors during when piping to gulp browserify?

Related Related

HotTag

Archive