File upload
BsFileUpload is a drop zone over a native file input: drop files on it, click it or use the browse button. Each batch is added to v-model:files, reported through @files-dropped and announced to screen readers. Rows show the name, size and a progress bar you update; the fileTemplate slot replaces a row. With name the input submits its files with a form, no JavaScript needed.
Basic usage
<BsFileUpload v-model:files="files" @files-dropped="upload" />Custom rows
<BsFileUpload v-model:files="files" @files-dropped="upload"> <template #fileTemplate="{ upload }"> <span>{{ upload.file.name }}</span> <button type="button" @click="remove(upload)">Remove</button> </template></BsFileUpload>