Почему YUI Uploader возвращает все файлы в очереди после выбора файла? - PullRequest
3 голосов
/ 10 июня 2009

Не уверен, если вы, ребята, знакомы с YUI Uploader , но после того, как вы нажмете «Обзор» и выберите набор файлов, событие обратного вызова возвращает список всех файлов которые стоят в очереди, а не только те, которые вы только что закончили выбирать. Это создает небольшую проблему, потому что теперь вместо того, чтобы просто добавлять выбранные файлы в пользовательский интерфейс, вы должны очистить список и заново добавить их все. Вы даже не можете вычислить разницу между существующими файлами и всеми файлами, потому что их идентификаторы файлов также изменяются случайным образом, как в порядке расположения файлов в очереди. Это замедляет пользовательский интерфейс, потому что он должен повторно добавлять вещи, которые уже были там, и вводит пользователя в заблуждение, поскольку все их вещи переупорядочиваются случайным образом. Как люди справились с этим? Было бы логично отсортировать файлы по имени файла, чтобы сохранить некоторую согласованность (хотя добавление в конец было бы более логичным), или кто-нибудь придумал какое-то сложное решение, чтобы выяснить, какие файлы были фактически выбраны в последней операции?

Ответы [ 3 ]

1 голос
/ 04 декабря 2009

в текущей версии файлов YUI добавлено в event.fileList в конец списка с прогрессивными идентификаторами и без изменения их порядка. взгляните на их пример загрузки нескольких файлов. Он даже продолжает порядок нумерации, если вы удаляете некоторые файлы из начала очереди.

0 голосов
/ 21 февраля 2011

Очередь файлов YUI Uploader может управляться с помощью 'Uploader.clearFileList' и 'Uploader.removeFile'. Вы можете использовать эти функции для управления очередью.

0 голосов
/ 25 октября 2009

Я использую Yahoo Uploader, но не совсем понимая, что вы имеете в виду, вы можете упорядочить файлы так, как вам хочется, каждый раз, когда пользователь выбирает файл, который вы можете вставить с помощью javascript в верхней части div, span или что вы используете и, например, что вы можете сделать, чтобы пользователь не выбрал тот же файл, который вы можете сохранить в массиве event.fileList.fileNUBER и сравнивать каждый раз, когда происходит событие onselect.

...