VueJS Dropzone在拖放时无法正常工作

时间:2018-08-30 19:18:40

标签: vue.js vue2-dropzone

我正在使用vue2-dropzone库,我的抱怨是dropzone组件的ref值不包含被删除的文件用户。 用户添加第二个文件后,dropzone的引用仅包含前一个文件。 但是当用户在文件对话框上选择时,它可以正常工作。

$coderefsystem = array_flip($systemrefcode);
$codes = $coderefsystem($codeval);
$selection = 'Your Selection is -'.$codes.'and its good.';
echo $selection;

2 个答案:

答案 0 :(得分:0)

您正在像这样访问您的引用:

self.$refs.docfile.dropzone

尝试这样:

self.$refs.docfile

根据文件,您可以使用getAcceptedFiles()getRejectedFiles()getQueuedFiles()方法获取文件。


关于如何使用vue-uploads事件的一些示例:

data: () => ({
    dropzoneOptions: {
      ...
    },
    myFiles: []
}),
<vue-dropzone ref="myVueDropzone" id="dropzone"
    :options="dropzoneOptions"
    @vdropzone-success="filesUploaded">
</vue-dropzone>
filesUploaded(event){
    this.myFiles.push(JSON.parse(event.xhr.response));
},

答案 1 :(得分:0)

我发现用户拖动文件时存在延迟。 因此,我已使用dropzone选项中的超时修复了此问题,如下所示。

dzOptions: {
    url: self.$apiUrl + "client/documents/",
    autoProcessQueue: false,
    acceptedFiles: "application/pdf",
    uploadMultiple: false,
    maxNumberOfFiles: 1,
    maxFilesize: 30,
    addRemoveLinks: true,
    dictDefaultMessage:
        "Select File",
    init: function() {
        this.on("addedfiles", function(files) {
            var dz = this;
            setTimeout(function() {
                self.upload();
            }, 500);
        });
    }
}