An AbortController that aborts after a specified timeout.
timeout-abort-controller
uses retimer
internally to help reduce the impact of having numerous timers running.
npm install timeout-abort-controller
const { AbortController } = require('native-abort-controller')
const { TimeoutController } = require('timeout-abort-controller')
const anySignal = require('any-signal')
const userController = new AbortController()
// Aborts after 1 second
const timeoutController = new TimeoutController(1000)
const combinedSignal = anySignal([userController.signal, timeoutController.signal])
combinedSignal.addEventListener('abort', () => console.log('Abort!'))
// The user or the timeout can now abort the action
await performSomeAction({ signal: combinedSignal })
timeoutController.clear()
Creates an AbortController
compliant TimeoutController
.
Name | Type | Description |
---|---|---|
ms | number | The time in milliseconds for when the TimeoutController should abort |
Clears the internal timer.
Aborts the controller and clears the internal timeout.
Clears the timer and sets the internal timeout to occur after the ms
timeout it was created with.
abort-controller
native-abort-controller
any-signal
Combines an array of AbortSignals into a single signal.
MIT © Jacob Heun