@dhl-uu/jquery-promise

1.1.1 • Public • Published

jquery-promise

A lightweight Promise polyfill based on Promises/A+ compliant $.Deferred from jQuery 3.

Build Status Promises/A+ 1.1 compliant

Use case

jquery-promise is for you if the following conditions apply.

  • You are already using jQuery 3+ for independent reasons.
  • You need a polyfill for the ES6 Promise interface, for example because you are transpiling async/await syntax.
  • You want your polyfill to be as small as possible.

Quickstart

$ npm i @dhl-uu/jquery-promise
import '@dhl-uu/jquery-promise';

This will only put the polyfill in global scope if there is no Promise global already. The polyfill implementation is also the default export of the module.

Limitations

This is a very thin wrapper around jQuery.Deferred. Our polyfill Promise interface has the same constructor, static methods and instance methods as the standard. However, objects returned after chaining .then, .catch and .finally lack the .finally method themselves. This is beyond our control, because jQuery constructs promise objects as plain objects in a closure and there is no prototype that we can extend. This is unlikely to cause problems in practice. You still get Promises/A+ compliant then-able objects.

Made by

Digital Humanities Lab

Package Sidebar

Install

npm i @dhl-uu/jquery-promise

Weekly Downloads

2

Version

1.1.1

License

BSD-3-Clause

Unpacked Size

10.1 kB

Total Files

6

Last publish

Collaborators

  • jgonggrijp
  • dhl-uu-bis