#vaadin #polymer-1.0
#vaadin #polymer-1.0
Вопрос:
Я хочу очистить предыдущие загружаемые файлы при перенаправлении к компоненту загрузки vaadin для повторной загрузки других изображений. Но всякий раз, когда я нажимаю на компонент, он также показывает мне данные для начальной загрузки:
Ответ №1:
Для vaadin V23 его:
//Upload upload = new Upload();
upload.clearFileList();
Ответ №2:
Поскольку я просмотрел код vaadin-upload.html , похоже, нет метода, не говоря уже о части его API, который позволял бы вам очищать ранее загруженные файлы. Мне нужна была эта функциональность в моем проекте, поэтому я изменил vaadin-upload.html я сам.
Внутри объекта, переданного Polymer()
функции в vaadin-upload.html , Я добавил следующие строки:
clearFiles: function() {
this.set('files', []);
}
Затем вы можете использовать свою любимую функцию выбора, чтобы получить экземпляр <vaadin-upload>
и затем вызвать clearFiles()
. В рамках Polymer это может выглядеть так:
this.$.myVaadinUpload.clearFiles();
Изменение сторонней библиотеки не идеально, но этот способ прост и понятен.
Обратите внимание, что важно использовать this.set()
(вместо this.files = []
) для запуска наблюдателей привязки полимера.
Ответ №3:
С помощью этого html:
<vaadin-upload id="uploader" files="{{files}}"> ... </vaadin-upload>
вы можете просто выполнить следующее в любом из ваших методов элемента:
this.$.uploader.files = [];
Это чище, поскольку не требует изменения кода vaadin-upload
.