Мне не удалось вызвать функции Backbone с помощью jquery.AOP. Он хорошо работает с глобальными функциями и модулями javascript.
require(['app', 'jquery' ],
function(App, $) {
App.initialize();
$.aop.before( {target: App.appRouter
method: 'helloWorld'},
function() {
alert("before Hello World");
}
});
В моем примере app.appRouter определенно является живой переменной экземпляра.
Вот приложение с его appRouter:
define([
'jquery',
'underscore',
'backbone'
], function($,
_,
Backbone
){
var appRouter = Backbone.Router.extend({
initialize: function() {
//some code
},
helloWorld: function(){
alert("hello world");
}
});
var initialize = function(){
this.appRouter = new appRouter(this);
Backbone.history.start();
};
return {
initialize: initialize,
appRouter : this.appRouter
};
});
Похоже на проблему сферой применения, так как предыдущий совет никогда не достигается.
Спасибо за любые мысли,
Jimmy