Package Exports
- one-by-one
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (one-by-one) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
one-by-one
Run async tasks one by one.
If you want to run async functions in parallel, check out same-time.
☁️ Installation
$ npm i --save one-by-one📋 Example
const oneByOne = require("one-by-one");
// Call these functions one by one
oneByOne([
cb => {
setTimeout(function () {
cb(null, "Hello World");
}, 1000);
}
, (cb, data) => {
console.log(data);
// => "Hello World"
setTimeout(function () {
cb(new Error("Some error"));
}, 100);
}
, cb => {
// This will NOT be triggered because the
// previous sent an error
cb(null, null);
}
], (err, data) => {
console.log(err, data);
// => [Error: Some error] [ 'Hello World' ]
});
// Call these functions one by one
oneByOne([
Math.random() > 0.5 ? next => {
console.log("Generated a random number greater than 0.5.");
next();
} : null
, cb => setTimeout(
() => cb(null, "Hello World")
, 1000
)
, (cb, prev) => setTimeout(
() => cb(null, prev.replace("World", "Mars"))
, 1000
)
], (err, data, message) => {
console.log(err, data, message);
// null [ 'Hello World', 'Hello Mars' ] 'Hello Mars'
});📝 Documentation
oneByOne(arr, cb)
Calls functions one by one and memorizes the results.
Params
- Array
arr: An array of functions getting the callback parameter in the first argument and response arguments from the previous function call. - Function
cb: The callback function called with an error (ornull) and the results array.
Return
- oneByOne The
oneByOnefunction.
😋 How to contribute
Have an idea? Found a bug? See how to contribute.
💫 Where is this library used?
If you are using this library in one of your projects, add it in this list. ✨
blah—A command line tool to optimize the repetitive actions.cdnjs-importer—Easy way to import a library into CDNJS.cobol—COBOL bridge for NodeJS which allows you to run COBOL code from NodeJS.engine-tools(by jillix)—Engine Tools library and CLI app.fortran—Fortran bridge for Node.js which allows you to run Fortran code from Node.js.gif-cli—Gif animations in your terminal!git-package-json—Get the package.json contents from git repositories.git-stats-importer—Imports your commits from a repository into git-stats history.gpm—npm + git = gpm - Install NPM packages and dependencies from git repositories.gry—A minimalist NodeJS wrapper for thegitcommands.grystands for the Git RepositorY.image-to-ascii—A Node.JS module that converts images to ASCII art.nodeice—Another PDF invoice generatornp-init—Easily start a npm package from scratch.ship-release—Publish new versions on GitHub and npm with ease.ssh-remote—Automagically switch on the SSH remote url in a Git repository.