【发布时间】:2021-10-20 03:02:23
【问题描述】:
我有一个用于拖放图像上传的文件输入。
<input
type="file"
ref="FileInput"
style="display: none;"
@change="onFileSelect"
accept=".jpg,.jpeg,.png,.tiff,.webp"
/>
在更改时触发 OnFileSelect 函数。
onFileSelect(e) {
console.log("came here");
const file = e.target.files[0];
...
...
// here the code sends the files to be uploaded in server
}
有一个包含输入字段的放置区:
<div
ref="dropZone"
@drop="onDrop($event)"
@click="$refs.FileInput.click()"
>
而onDrop函数如下:
onDrop(e) {
this.$refs.FileInput.files = e.dataTransfer.files;
//this changes fileList in input but the onChange in input field is not triggered
console.log("Yes", this.$refs.FileInput.files);
},
当我在 dropzone 中放置图像文件并且输入中的 Filelist 也发生更改时触发 onDrop,但在 onDrop 函数之后不会调用函数 onFileSelect(应在输入更改时触发)。我怎样才能做到这一点?提前致谢!
【问题讨论】:
标签: javascript html vue.js file-upload drag-and-drop