Marionette.Callbacks
Предупреждение: устаревший
Marionette.Callbacks устарели и планируется их удаление в следующей основной версии библиотеки. Вместо Callbacks следует использовать промисы или события для управления асинхронной логикой.
Объект Callbacks помогает управлять коллекцией методов обратного вызова и их выполнением безопасным для асинхронных операций способом.
Существует только два метода:
addrun
Метод add добавляет новый обратный вызов для последующего выполнения.
Метод run выполняет все текущие обратные вызовы, используя указанный контекст для каждого из них и предоставляя предоставленные параметры обратным вызовам.
Индекс документации
- Базовое использование
- Указание контекста для каждого обратного вызова
- Расширенное/асинхронное использование
Базовое использование
var callbacks = new Marionette.Callbacks();
callbacks.add(function(options){
alert("I'm a callback with " + options.value + "!");
});
callbacks.run({value: "options"}, someContext);
Этот пример отобразит всплывающее окно со сообщением "Я обратный вызов с параметрами!". Контекст выполнения для каждого из методов обратного вызова был установлен на объект someContext, который является необязательным параметром и может быть любым допустимым объектом JavaScript.
Указание контекста для каждого обратного вызова
При добавлении обратного вызова можно необязательно указать контекст, в котором он должен выполняться:
var callbacks = new Marionette.Callbacks();
callbacks.add(function(options){
alert("I'm a callback with " + options.value + "!");
// specify callback context as second parameter
}, myContext);
// the `someContext` context is ignored by the above callback
callbacks.run({value: "options"}, someContext);
Это запустит указанный обратный вызов с объектом myContext установленным как this в обратном вызове, а не как someContext.
Расширенное/асинхронное использование
Callbacks выполняет каждый обратный вызов в дружелюбном к асинхронным операциям режиме и может быть использован для облегчения асинхронных обратных вызовов. Объект Marionette.Application использует Callbacks для управления инициализаторами (см. выше).
Он также может использоваться для гарантии выполнения обратных вызовов в сценарии, управляемом событиями, подобно инициализаторам приложения.
© 2016 Muted Solutions, LLC
Licensed under the MIT License.
https://marionettejs.com/docs/v2.4.7/marionette.callbacks.html