Optimize require.js based projects
Getting Started
If you haven't used grunt before, be sure to check out the Getting Started guide.From the same directory as your project's Gruntfile and package.json, install this plugin with the following command:
npm install grunt-requirejs
Once that's done, add this line to your project's Gruntfile:
grunt.loadNpmTasks('grunt-requirejs');
Overview
Inside yourGruntfile.js
file add a section named requirejs
. This section specifies the options passed to RequireJS Optimizer.Parameters
options ``object
``
This controls how this task (and its helpers) operate and should contain key:value pairs, see options below.Options
For a full list of possible options, see the r.js example build file.Config Example
Example require js optimizer config entry:requirejs: {
compile: {
options: {
baseUrl: "path/to/base",
mainConfigFile: "path/to/config.js",
out: "path/to/optimized.js"
}
}
}
There is no difference between declaring your require config in your Gruntfile and using a separate requirejs config file.
Note: Minification via Closure Compiler is not supported! You can, however, use grunt-closure-compiler as a separate build step after grunt-requirejs.
Almond
grunt-requirejs is capable of replacing require.js with almond.js automaticallyFor more infos please take a look at the Almond Integration document
Using custom r.js versions
grunt-requirejs lets you specify a custom r.js for your buildFor more infos please take a look at the Using Custom r.js versions document
Using source maps
grunt-requirejs can generate sourcemaps when using the r.js v2.1.2 or higherFor more infos please take a look at the Using Source Maps document
Examples
There are some project & configuration examples to get you started:- libglobal - multipage - multipage-shim