sequence
v3.0.0
Published
Execute async code in chronological order. The sequence module of FuturesJS (Browser, Node.js, Bower, and Pakmanager)
Readme
Sequence
Creates an Asynchronous Stack which execute each enqueued method after the previous function calls the provided next(err, data [, ...]).
In many cases forEachAsync or forAllAsync will be a better alternative.
API
Sequence.create(defaultContext=null)then(function callback(next, err, data [, ...]) {}, context)- add a callback onto the queue- begins or resumes the queue
- passes the results of the previous function into the next
Node.js Installation
Node.JS (Server):
npm install sequenceBrowser Installation
You can install from bower:
bower install sequenceOr download the raw file from https://raw.github.com/FuturesJS/sequence/master/sequence.js:
wget https://raw.github.com/FuturesJS/sequence/master/sequence.jsOr build with pakmanager:
pakmanager build sequenceUsage
(function (exports) {
'use strict';
var Sequence = exports.Sequence || require('sequence').Sequence
, sequence = Sequence.create()
, err
;
sequence
.then(function (next) {
setTimeout(function () {
next(err, "Hi", "World!");
}, 120);
})
.then(function (next, err, a, b) {
setTimeout(function () {
next(err, "Hello", b);
}, 270);
})
.then(function (next, err, a, b) {
setTimeout(function () {
console.log(a, b);
next();
}, 50);
});
// so that this example works in browser and node.js
}('undefined' !== typeof exports && exports || new Function('return this')()));