#javascript #backbone.js
#javascript #backbone.js
Вопрос:
У меня есть набор объектов, которые используются Backbone.Events
стандартным способом:
var object = {};
_.extend(object, Backbone.Events);
Также у меня есть сторонняя библиотека, которая предоставляет набор объектов, которые используют Backbone.Events
.
Я хотел бы иметь способ регистрировать все события от всех этих объектов, описанных выше.
Я знаю о all
событии, но мой вопрос шире по объему. Я могу создать абстрактный объект, который регистрирует все события и использовать его везде, но это плохо работает со сторонними библиотеками, потому что мне также приходится расширять его.
Ответ №1:
В итоге я написал пользовательские обработчики для Backbone.Layout
(из используемой мной сторонней библиотеки) Backbone.Model
и Backbone
самого объекта.
Пример:
// similar handler can be written for Backbone.Model
Backbone.Layout.prototype.trigger = function() {
console.log('view', arguments);
Backbone.Events.trigger.apply(this, arguments);
}
Backbone.on("all", function(eventName) {
console.log(eventName, JSON.stringify(arguments));
});
Комментарии:
1. @EmileBergeron Я бы тоже хотел. Но в нем говорится: «вы можете принять свой собственный ответ завтра»