@lazycuh/retry
v2.0.0
Published
Convenient utilities to retry executing some operation until success or failure at most 3 times
Readme
retry 
Convenient utilities to retry executing some operation until success or failure at most 3 times.
Table of contents
Installation
npmnpm i -S @lazycuh/retrypnpmpnpm i -S @lazycuh/retryyarnyarn add @lazycuh/retry
Available APIs
retry function
To imperatively retry some operation, wrap your function/method call inside retry as followed:
import { retry } from '@lazycuh/retry';
...
const allUsers = await retry(() => fetchAllUsers(), 1000); // Wait 1000ms between retries, default is 3000ms
...@Retryable decorator
Alternatively, you can decorate your methods using @Retryable decorator to add retrying logic to them, be sure that your tsconfig.json file has experimentalDecorators setting enabled, for example:
{
"compilerOptions": {
...
"experimentalDecorators": true,
...
},
}import { Retryable } from '@lazycuh/retry';
...
class UserService {
@Retryable(2000) // Wait 2000ms between retries, default is 3000ms
fetchUsers() {
...
}
}
...When userService.fetchUsers() is called, any failures will cause it to rerun until either succeeding or failing at most 3 times after the initial failure.
