Pure Javascript Ajax queuing for efficient handling of frontend requests.
const queue = new Queue([config]); queue.add([request]); The config object is not required
| Name | Description | Type | Default |
|---|---|---|---|
| success | The callback for all successful ajax requests processed by this queue | function | Dispatch a Queue:requestCompleted event |
| error | The callback for all unsuccessful ajax requests processed by this queue | function | Dispatch a Queue:requestFailed event |
| completedAllRequestsEvent | The event type that will be dispatched once all requests have finished | string | Queue:requestsCompleted |
| completedRequestEvent | The event type that will be dispatched after each request is finished | string | Queue:requestCompleted |
| failedRequestEvent | The event type that will be dispatched after a request has failed | string | Queue:requestFailed |
| requestStartedEvent | The event type that will be dispatched after each request has started | string | Queue:requestStarted |
| errorEvent | The event type that will be dispatched after Q has thrown an error | string | Queue:error |
Adds a request to the currently running queue, this will cause the queue to process each item, one at a time until all requests have been resolved.
const queue = new Queue() // Build the ajax request const request = { url: '/cart/add.js', data: item, success: options.success, error: options.error } // Add the request to the ajax request queue this.queue.add(request) }) | Name | Description | Required | Type | Default |
|---|---|---|---|---|
| success | The callback for a successful response, overwrites the queue default. | false | function | Dispatch a Queue:requestCompleted event |
| error | The callback for an unsuccessful response, overwrites the queue default. | false | function | Dispatch a Queue:requestFailed event |
| url | The url that the request will be sent to | true | string | null |
| method | The method that will be used to make the request | false | string | GET |
| data | Any data that you wish to send to the request | false | any | null |
| dataType* | The type of data that we expect to recieve from the request | false | string | '' |
Options: '', 'arraybuffer', 'blob', 'document', 'json', 'text'