Is there a way to mangle all variables except a specific one with gulp-uglify?
4 回答
There definitely is, I couldn't find any documentation for gulp-uglify regarding these sub-options, so relied on grunt-uglify & wrote it the gulp way.
.pipe( uglify({ mangle: {except: ['jQuery']} }) ) // for gulp-uglify ^2.0.1
The above code will mangle every variable except jQuery
Hopefully this will still be useful for you. ;)
Sam.
========
NB: If you are using gulp-uglify ^3.0.0
please replace except
with reserved
eg:
.pipe( uglify({ mangle: {reserved: ['jQuery']} }) ) // for gulp-uglify ^3.0.0
Kudos to Lukas Winkler
That's right.
UglifyJS 3 except
was replaced with reserved
. Otherwise it will throw
DefaultsError: except` is not a supported option
it seem like this
.pipe(uglify({mangle: {reserved: ['$.loadEditor']}}))
This work for me
.pipe(uglify({
mangle: { toplevel: true, except: ['variable1', 'variable2',
'function1'], 'function2' }
}))
You can use like this:
gulp.src(['src/*.js'])
.pipe(uglify({
mangle: {
except: ['ExtensionId'] // (base on gulp-uglify v1.5.3)
}
}))