npm install --save-dev grunt-systemjs-builder
grunt.loadNpmTasks("grunt-systemjs-builder");
grunt systemjs
This is a MultiTask therefore it can run using different configuration using targets in the grunt configuration. see grunt docs for more info.
In essence, this grunt task simply passes along configuration to the SystemJS Builder. You should familiarize yourself with its configuration documentation.
"The baseURL provides a special mechanism for loading modules relative to a standard reference URL."
if baseURL is provided through the configuration, it will be the one used and any subsequent baseURL configuration (even) from a configFile will be ignored as systemjs only allows to configure baseURL once.
path to an external configuration file (one with System.config(...) calls).
default: false
Create a self-executing bundle
default: false
shortcut for passing the build object with a minify property
default: true
shortcut for passing the build object with a sourceMapsproperty
The configuration that is allowed when creating the builder instance. Basically any valid systemjs configuration (same as calling System.config()). see builder documentation.
### build: Objectthe configuration that is allowed when running build or buildSFX see builder documentation.
Configuring the source and destination files is done in the standard grunt way using the "files" property of the target (see example below)
grunt.initConfig({
systemjs: {
options: {
sfx: true,
baseURL: "./target",
configFile: "./target/config.js",
minify: true,
build: {
mangle: false
}
},
dist: {
files: [{
"src": "./target/src/init.js",
"dest": "./target/bundles/app.min.js"
}]
}
}
});
- upgraded dependency on systemjs-builder to allow 0.16.x installs
- upgraded grunt dependency to 1.0.1