gulp-rjs-optimizer
v0.1.0
Published
Builds projects using require.js's optimizer
Downloads
34
Readme
#gulp-rjs-optimizer
Information
This is a fork of jorrit/gulp-requirejs mainly to add back support for node 0.10
A small, simple, very easy wrapper around the require.js optimizer to work with gulp.js
##Installation
Simply add gulp-rjs-optimizer
as a dev-dependency in your package.json or run
$ npm install --save-dev gulp-rjs-optimizer
Usage
Because the require.js optimizer (r.js) is a kind of build system in itself we can't use the gulp.src([...])
syntax at the moment (I might add this in future), instead this wrapper itself emits a pipable stream, holding a 'virtual' file, in which the result of the r.js build process are saved.
The resulting stream can be treated like a regular gulp.src(...)
stream.
NOTE: The built in minification/obfuscation is deactivated by default. It is recommended to use a gulp plugin like gulp-uglify for minification, but you can enable r.js minification by setting the
optimize
option touglify
to minify using r.js.
var gulp = require('gulp'),
rjs = require('gulp-rjs-optimizer');
gulp.task('requirejsBuild', function() {
return rjs({
baseUrl: 'path/to/your/base/file.js',
out: 'FILENAME_TO_BE_OUTPUTTED',
shim: {
// standard require.js shim options
},
// ... more require.js options
})
.pipe(gulp.dest('./deploy/')); // pipe it to the output DIR
});
Note: In order to let gulp know that the optimization completes, return the rjs stream.
Error handling
gulp-rjs-optimizer will emit errors when you don't pass an options object and if the baseUrl
or out
properties are undefined.
The require.js optimizer itself might also emit errors; unfortunately there's no way of catching them elegantly at the moment.
Options
The options object supports the same parameters as the require.js optimizer.