Я создаю плагин jQuery. Пока он работает нормально, но у меня есть сомнения относительно того, как я делаю вещи:
jQuery.fn.myMethod = function() {
return this.each(function(){
MyScope.doSomething(jQuery(this).attr("id"));
});
};
var MyScope = {
// The functions contained in MyScope are extremely linked to the logic
// of this plugin and it wouldn't make a lot of sense to extract them
doSomething: function(id){
// something
doSomethingElse(23);
// some more code
doSomethingElse(55);
},
doSomethingElse: function(someInt){
// some code
}
};
Я использую MyScope для хранения всех моих функций "private". Я не хочу, чтобы пользователь мог идти $("p").doSomething()
, но мне нужно их использовать.
Я мог бы перемещать все в функции myMethod
, но это создавало бы 100-строчную функцию, и люди меня ненавидят.
Какие лучшие практики в этой ситуации? Есть ли отличные учебники по этому поводу?