Я бы создал фиктивный проект с именованной зависимостью как единственной зависимостью. Затем вы можете выполнить mvn dependency:copy-dependencies
, чтобы скопировать все (транзитивные) зависимости в определенную папку.
Я не думаю, что jQuery имеет встроенную функцию этого. Но Вы могли использовать конструкцию помощника как следующее:
Function.prototype.createDelegate = function(scope) {
var fn = this;
return function() {
// Forward to the original function using 'scope' as 'this'.
return fn.apply(scope, arguments);
}
}
// Then:
$(...).bind(..., obj.method.createDelegate(obj));
Таким образом, можно создать динамические 'функции обертки' с createDelegate (), которые называют метод с данным объектом как его 'этот' объем.
Пример:
function foo() {
alert(this);
}
var myfoo = foo.createDelegate("foobar");
myfoo(); // calls foo() with this = "foobar"
jQuery не поддерживает, связывает, и предпочтительный путь состоит в том, чтобы использовать функции.
, поскольку в JavaScript, this.availableCategoryClick не означает вызывать availableCategoryClick функцию на этом объекте, jQuery советует для использования этого предпочтительного синтаксиса:
var self = this;
jQuery('#available input', self.controlDiv).bind('click', function(event)
{
self.availableCategoryClick(event);
});
понятия OO в JavaScript трудно понять, функциональное программирование часто легче и более читаемо.
Видя, что объем изменений функций, наиболее распространенный способ состоит в том, чтобы сделать это вручную с чем-то как var self = this
.
var self = this
$('.some_selector').each(function(){
// refer to 'self' here
}
Мне нравится ваш способ, на самом деле я использую подобную конструкцию:
$('#available_input').bind('click', {self:this}, this.onClick);
и первую строку this.onClick:
var self = event.data.self;
Мне нравится этот способ, потому что тогда вы получаете и элемент кликнул (как этот), и "этот" объект как себя, без необходимости использовать замыкания.
.