Skip to content

Commit db58693

Browse files
authored
Merge pull request #193 from devforth/fix-dropzone
fix: change Dropzone div to form and add clear function
2 parents a712e99 + 1cddf61 commit db58693

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

adminforth/spa/src/afcl/Dropzone.vue

+14-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<template>
2-
<div class="flex items-center justify-center w-full"
2+
<!-- tag form used to reset the input (method .reset() in claer() function) -->
3+
<form class="flex items-center justify-center w-full"
34
@dragover.prevent="dragging = true"
45
@dragleave.prevent="dragging = false"
56
@drop.prevent="dragging = false; doEmit($event.dataTransfer.files)"
@@ -43,12 +44,12 @@
4344
:multiple="props.multiple || false"
4445
/>
4546
</label>
46-
</div>
47+
</form>
4748
</template>
4849

4950
<script setup lang="ts">
5051
import { humanifySize } from '@/utils';
51-
import { ref, type Ref } from 'vue';
52+
import { ref, defineExpose, type Ref } from 'vue';
5253
import { IconFileSolid } from '@iconify-prerendered/vue-flowbite';
5354
import { watch } from 'vue';
5455
import adminforth from '@/adminforth';
@@ -125,4 +126,14 @@ function doEmit(filesIn: FileList) {
125126
126127
const dragging = ref(false);
127128
129+
function clear() {
130+
selectedFiles.value = [];
131+
emit('update:modelValue', []);
132+
const form = document.getElementById(id)?.closest('form');
133+
form?.reset();
134+
}
135+
136+
defineExpose({
137+
clear,
138+
});
128139
</script>

0 commit comments

Comments
 (0)