我已经使用dropzonejs制作了一个vue下拉区域组件。但是,该组件可以工作,但我无法将下拉区域配置为上载大于256 is的文件,我认为这是默认的。为了测试目的,我已经放了1mb(减少最大文件大小)。
我也尝试过将我的配置代码放入挂载的beforeMount、create等中。
我的密码
<template>
<div class="dropzone-container">
<form
:action="uploadurl"
class="dropzone drop-area"
enctype="multipart/form-data"
id="myDropzone"
ref="myDropzone"
:key="`dz-${dzkey}`"
>
<input type="hidden" name="path" :value="currentPath" />
</form>
<button class="finish-button" @click="finishUpload">Finish Upload</button>
</div>
</template>
<script>
// import * as Dropzone from "dropzone/dist/min/dropzone.min.js";
import FileHandling from "../fileHandling";
const Dropzone = require("dropzone/dist/dropzone.js");
Dropzone.autoDiscover = true;
export default {
name: "DropZone",
props: ["currentPath"],
data() {
return {
uploadurl: FileHandling.SendForUpload(),
dzkey: 0,
};
},
methods: {
finishUpload() {
this.$refs.myDropzone.dropzone.removeAllFiles();
this.$emit("finishedUpload");
},
dropconfig() {
console.log(Dropzone);
Dropzone.options[this.$refs.myDropzone] = {
maxFilesize: 1,
};
},
},
ready: function() {
this.dropconfig();
},
};
</script>发布于 2021-06-04 20:23:59
代码中有两个问题:
ready钩子。也许你指的是mounted:导出默认的{ //就绪钩子不存在// this.dropconfig(){ // this.dropconfig();//},//✅挂载(){ this.dropconfig();}
Dropzone.options是元素is (字符串)的映射,而不是元素实例(HTMLElement):// myDropzone // dropzone.optionsthis.$rens.myDropzone={/*.*/};//✅Dropzone.options.myDropzone是一个字符串,与模板Dropzone.options.myDropzone={/*.*/}中的元素ID匹配;
修复这些问题将使您的maxFilesize配置生效。
https://stackoverflow.com/questions/67842050
复制相似问题