Добрый день!
Решил впервые попробовать создать свою небольшую библиотеку.
Вот как у меня вызывается новые обьект (без необязательных аргументов)
var loader= new FileLoader(
'#main_content', //root
function(){alert('callback ok')} //callback
);
Вот как у меня вызывается новые обьект (с необязательными аргументами)
var loader= new FileLoader(
'#main_content', //root
{
fileinfo:{
root:'.fileloader_info',
length:files_length, //array
progress:true,
filename:file_names //array
},
settings:{hidefoto:true,'description':true}
},
function(){alert('callback ok')}//callback fnc
);
проблема в том что сам обьект создан с использование прототипов, но они сами используютя только внутри обьекта и вызываются исходя параметров обьекта, которых может быть много и не все обязательные.
Например
Если указан в параметре при создание нового обьекта
{fileinfo:{
filename:file_names //array
}
}
В главном обьекте вызывается
FileLoader.prototype.filename=function(arr,i){
/*код*/
}
То есть этот прототип нельзя вызвать так
var loader= new FileLoader
loader.filename()
Вопрос - можно ли так формировать архитектуру библиотеки, или лучше все прототипы поменять на методы и разместить их все в одном главном методе конструкторе например _init() ?