在项目中通常会碰到上传文件夹的需求,网上诸多方法设置,无非就是改变input的webkitdirectory属性。
网络方法较多,但是写的不够详细,有可能会导致文件夹选择失败。
<el-upload ref="uploadGC" action="" name="el-upload_mapinput" class="upload-demo"
:file-list="fileList" :on-change="filechangeGC" :http-request="() => importgimFileGC(scope.row)"
:show-file-list="false" :multiple="true" >
</el-upload>
upload组件配置一般都不会影响到选择文件夹。
重点在于点击上传控件之前,把input的属性webkitdirectory改为true
webkitdirectory为true,则表明当前只能选择文件夹,反之则选择具体文件
但是这个地方有一些坑,一些资料修改该属性并不生效。
此时注意看,上方组件里面添加了name属性,可以在控件中添加一个按钮或者任何触发方法的标签,调用方法,通过name属性选择input控件,并对其进行更改
document.getElementsByName("el-upload_mapinput")[0].webkitdirectory = true;
使用这种方法可成功修改设置其webkitdirectory属性,当然其他方法能实现也是一样的,目的都是为了功能正常运行。