Marionette Configuration
Marionette has a few globally configurable settings that will change how the system works. While many of these subjects are covered in other docs, this configuration doc should provide a list of the most common items to change.
Marionette.Deferred
Warning: deprecated
This feature is deprecated, and is scheduled to be removed in version 3 of Marionette. It is used to configure
Marionette.Callbacks
, which is also deprecated and scheduled to be removed in version 3. Instead of proxying theDeferred
property on Marionette, use the nativePromise
object directly, and include a polyfill such as https://github.com/jakearchibald/es6-promise if you are supporting older browsers.$.Deferred
can also be used, but it is not compliant with the ES6 Promise and is not recommended.
By default, Marionette makes use of Backbone.$.Deferred
to create thenable objects.
Overriding Marionette.Deferred
If you are using Marionette without jQuery you must first shim Backbone.$.Deferred
with a following object that adheres to these properties:
-
promise
: a Promises/A+ thenable, or a function that returns one -
resolve
: a function that resolves the provided promise with a value
For example:
var deferred = Marionette.Deferred();
_.result(deferred, 'promise').then(function (target) {
console.log("Hello, " + target + "!");
});
deferred.resolve("world"); // asynchronous "Hello, world!"
If you wish to use a specific promise library, you can override the default via:
Marionette.Deferred = myDeferredLib;
© 2016 Muted Solutions, LLC
Licensed under the MIT License.
https://marionettejs.com/docs/v2.4.7/marionette.configuration.html