@colinfrick/abort-controller
An implementation of WHATWG AbortController interface.
import AbortController from "@colinfrick/abort-controller"
const controller = new AbortController()
const signal = controller.signal
signal.addEventListener("abort", () => {
console.log("aborted!")
})
controller.abort()
💿 Installation
Use npm to install then use a bundler.
npm install @colinfrick/abort-controller
Or download from dist
directory.
- dist/abort-controller.mjs ... ES modules version.
- dist/abort-controller.js ... Common JS version.
- dist/abort-controller.umd.js ... UMD (Universal Module Definition) version. This is transpiled by Babel for IE 11.
📖 Usage
Basic
import AbortController from "@colinfrick/abort-controller"
// or
const AbortController = require("@colinfrick/abort-controller")
// or UMD version defines a global variable:
const AbortController = window.AbortControllerShim
If your bundler recognizes browser
field of package.json
, the imported AbortController
is the native one and it doesn't contain shim (even if the native implementation was nothing).
If you wanted to polyfill AbortController
for IE, use abort-controller/polyfill
.
Polyfilling
Importing @colinfrick/abort-controller/polyfill
assigns the AbortController
shim to the AbortController
global variable if the native implementation was nothing.
import "@colinfrick/abort-controller/polyfill"
// or
require("@colinfrick/abort-controller/polyfill")
API
AbortController
controller.signal
The AbortSignal object which is associated to this controller.
controller.abort()
Notify abort
event to listeners that the signal
has.
📰 Changelog
- See GitHub releases.
🍻 Contributing
Contributing is welcome
Please use GitHub issues/PRs.
Development tools
-
npm install
installs dependencies for development. -
npm test
runs tests and measures code coverage. -
npm run clean
removes temporary files of tests. -
npm run coverage
opens code coverage of the previous test with your default browser. -
npm run lint
runs ESLint. -
npm run build
generatesdist
codes. -
npm run watch
runs tests on each file change.