Package Exports
- evl
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 (evl) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
EVL
😈 Function fallback when error.
Likes NVL but for Error fallback.
Installation
Via npm:
npm install evl
Via Yarn:
yarn add evl
Usage
const evl = require('evl');
const err = () => {
throw new Error('An error. 😱');
};
const one = () => 1;
const two = () => 2;
const add = (a, b) => a + b;
const multiply = (a, b) => a * b;
/*
* No arguments
*/
const a = evl(one, two)(); // a is 1
const b = evl(err, two)(); // b is 2
/*
* With arguments
*/
// To call add(1, 2) or multiply(3, 4)
const c = evl(add, multiply)([1, 2], [3, 4]); // c is 3 (1 + 2 from add function)
// To call err(1, 2) or multiply(3, 4)
const d = evl(err, multiply)([1, 2], [3, 4]); // d is 12 (3 * 4 from multiply function)
You can also pass non-function.
const evl = require('evl');
const err = () => {
throw new Error('An error. 💩');
};
evl(err, 'I am fallback value.') // -> 'I am fallback value.'
API
evl(mainFunction, fallbackFunction)
Create an invoke function that will return the value from either of given functions.
mainFunction
Type: Function
A main function that you expect it to work.
If you pass non-function value to this parameter,
evl
will return it back from invoke function.
fallbackFunction
Type: Function
A fallback function that will work when main function throw an error.
If you pass non-function value to this parameter,
evl
will return it back from invoke function when main function not work.
invoke(mainFuncArgs, fallbackFuncArgs)
- Invoke Function
Return a value of either of given functions with given arguments.
If both
mainFunction
andfallbackFunction
have error,invoke
will returnnull
.
mainFuncArgs
Type: Array
Default: []
Arguments of evl
's mainFunction
.
fallbackFuncArgs
Type: Array
Default: []
Arguments of evl
's fallbackFunction
.