npm.io
25.3.5 • Published 1 week ago

@vaadin/upload

Licence
Apache-2.0
Version
25.3.5
Deps
7
Size
383 kB
Vulns
0
Weekly
0
Stars
583

@vaadin/upload

A web component for uploading files.

Documentation + Live Demo

npm version

<vaadin-upload accept=".pdf">
  <span slot="drop-label">Drop your favourite Novels here (PDF files only)</span>
</vaadin-upload>

Screenshot of vaadin-upload

Installation

Install the component:

npm i @vaadin/upload

Once installed, import the component in your application:

import '@vaadin/upload';

Performance Considerations

When uploading large numbers of files, the component automatically throttles concurrent uploads to prevent browser performance degradation. By default, a maximum of 3 files are uploaded simultaneously, with additional files queued automatically.

You can customize this limit using the max-concurrent-uploads attribute:

<!-- Limit to 5 concurrent uploads -->
<vaadin-upload max-concurrent-uploads="5"></vaadin-upload>
// Or set it programmatically
upload.maxConcurrentUploads = 5;

This helps prevent:

  • Browser XHR limitations (failures when uploading 2000+ files simultaneously)
  • Performance degradation with hundreds of concurrent uploads
  • Network congestion on slower connections

The default value of 3 balances upload performance with network resource conservation.

Contributing

Read the contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to test your changes to Vaadin components.

License

Apache License 2.0

Vaadin collects usage statistics at development time to improve this product. For details and to opt-out, see https://github.com/vaadin/vaadin-usage-statistics.

Keywords