Skip to content

orElse()

Provide an alternative task to try if this one fails.

Syntax

typescript
task.orElse(fn: (error: any) => FuturableTask<T>): FuturableTask<T>

Parameters

fn

Function that receives the error and returns an alternative FuturableTask.

Examples

typescript
const task = FuturableTask
  .fetch('/api/primary')
  .orElse(() => FuturableTask.fetch('/api/backup'))
  .orElse(() => FuturableTask.resolve(CACHED_DATA));

Fallback Chain

typescript
const getData = FuturableTask
  .fetch('/api/v2/data')
  .orElse(() => FuturableTask.fetch('/api/v1/data'))
  .orElse(() => FuturableTask.of(() => loadFromLocalStorage()));

See Also

Released under the MIT License.