Цитата:
|
не до конца уверен на этот счет. Допустим, ты перетащил 10 файлов...
|
А может быть и быстрее, нужно исследовать. Впрочем, тут с тобой больше согласен. Так лучше, да и разница в скорости по-любому не будет существенной.
Цитата:
|
Ну а как ты еще представляешь себе загрузку файлов по разным урлам в рамках одной очереди?
|
О_о Никогда бы не подумал что кому-нибудь будет нужно. Во-первых загрузка одного и того же файла по разным URL в пределах одного сервера — плохое решение. Нельзя такие поощрять. Тут нужно загрузить файл один раз и уже на сервере скопировать куда нужно.
Загрузка одного файла на разные сервера... ИМХО, очень специфичная задача. Может быть какая-то распространенная хитрая оптимизация?
Загрузка очереди по разным URL. Типа кидаешь 5 файлов в таблицу, и они записываются в каждую ячейку. Возможно, но мало кому надо.
Цитата:
|
Можешь привести пример кода?
|
Тут лучше смотреть
песочницу. У меня каждой директиве
oi-file="options"
можно задать свой объект с настройками. В каждом таком объекте мы задаем колбек
change: function (file) {
file.$upload(url + data.id, $scope.items[i], data.settings);
}
Из него мы получаем массив файлов и функцию загрузки. Можем теперь хоть каждый файл по отдельном URL загрузить
Цитата:
|
Насчет абортов ничего не выяснить не удалось?
|
Пока только отрицательный опыт. Убить загрузку можно, вызвав xhr.abort(). xhr-объект можно записать в объект файла (в твоем случае в item). Поскольку этот объект можно загрузить в область видимости, то можно и аборт оттуда сделать и всё хорошо обрывается. Проблема в том, что при манипуляциях с моделью лезут ошибки именно из-за того, что в модели оказывается ссылка на xhr, а в xhr записана ссылка на модель (циклическая ссылка).
Вот тут как раз думаю сделать как у тебя (в одно время загружается один файл), тогда в xhr можно будет не загружать модель, т.к. и так будет ясно для какой модели загрузился файл.
Цитата:
|
Случайно не видел, используется ли где-нибудь в angular.ui проверка фазы?
|
Случайно нигде не видел, чтобы она использовалась))) Более того, в версии 1.2 и из своего кода смог эти проверки выкинуть. Стало и без них работать. (был баг, когда http-запросы копились и уходили не сразу, если цикл не запустить)