CJS and AMD are the primary targets for when
, but instructions for a variety of setups are provided below.
As of version 3.0, when.js requires an ES5 environment. In older environments, use an ES5 shim such as poly or es5-shim
-
Get it.
bower install --save when
, orgit clone https://github.com/cujojs/when
-
Configure your loader. Here is an example of how configuring the package might look:
// using requirejs
requirejs.config({
packages: [
{ name: 'when', location: '/path/to/when', main: 'when' }
]
});
// using curl.js
curl.config({
packages: {
when: { location: '/path/to/when', main: 'when' }
}
});
- Load when wherever you need it. For example, as part of a module:
define(function(require) {
var when = require('when');
});
npm install --save when
var when = require('when');
ringo-admin install cujojs/when
var when = require('when');
ender add when
var when = require('when');
git clone https://github.com/cujojs/when
var when = require('when');
orvar when = require('path/to/when');
Since when.js primarily targets modular environments, it doesn't export to the global object (window
in browsers) by default. You can create your own build of when.js using browserify, if you prefer not to use an AMD or CommonJS loader in your project.
git clone https://github.com/cujojs/when
npm install
npm run browserify
to generatebuild/when.js
- Or
npm run browserify-debug
to build with when/monitor/console enabled <script src="path/to/when/build/when.js"></script>
when
will be available aswindow.when
- Other modules will be available as sub-objects/functions, e.g.
window.when.fn.lift
,window.when.sequence
. See the full sub-namespace list in the browserify build file
Similarly to browser global environments:
git clone https://github.com/cujojs/when
npm install
npm run browserify
to generatebuild/when.js
- Or
npm run browserify-debug
to build with when/monitor/console enabled importScripts('path/to/when/build/when.js');
when
will be available asself.when
- Other modules will be available as sub-objects/functions, e.g.
self.when.fn.lift
,self.when.sequence
. See the full sub-namespace list in the browserify build file