The public interface to a deferred.
The public interface to a deferred. All promises in Dojo are instances of this class.
See the dojo/promise/Promise reference documentation for more information.
Add a callback to be invoked when the promise is resolved or rejected.
Parameter | Type | Description |
---|---|---|
callbackOrErrback | Function |
Optional A function that is used both as a callback and errback. |
Returns a new promise for the result of the callback/errback.
Inform the deferred it may cancel its asynchronous operation.
Inform the deferred it may cancel its asynchronous operation. The deferred's (optional) canceler is invoked and the deferred will be left in a rejected state. Can affect other promises that originate with the same deferred.
Parameter | Type | Description |
---|---|---|
reason | any | A message that may be sent to the deferred's canceler, explaining why it's being canceled. |
strict | Boolean |
Optional If strict, will throw an error if the deferred has already been fulfilled and consequently cannot be canceled. |
Returns the rejection reason if the deferred was canceled normally.
Checks whether the promise has been resolved or rejected.
Add new errbacks to the promise.
Parameter | Type | Description |
---|---|---|
errback | Function |
Optional Callback to be invoked when the promise is rejected. |
Returns a new promise for the result of the errback.
Add new callbacks to the promise.
Add new callbacks to the deferred. Callbacks can be added before or after the deferred is fulfilled.
Parameter | Type | Description |
---|---|---|
callback | Function |
Optional Callback to be invoked when the promise is resolved. Receives the resolution value. |
errback | Function |
Optional Callback to be invoked when the promise is rejected. Receives the rejection error. |
progback | Function |
Optional Callback to be invoked when the promise emits a progress update. Receives the progress update. |
Returns a new promise for the result of the callback(s). This can be used for chaining many asynchronous operations.
Trace the promise.
Tracing allows you to transparently log progress,
resolution and rejection of promises, without affecting the
promise itself. Any arguments passed to trace()
are
emitted in trace events. See dojo/promise/tracer on how
to handle traces.
The promise instance trace()
is called on.
Trace rejection of the promise.
Tracing allows you to transparently log progress,
resolution and rejection of promises, without affecting the
promise itself. Any arguments passed to trace()
are
emitted in trace events. See dojo/promise/tracer on how
to handle traces.
The promise instance traceRejected()
is called on.