最近项目中用到element-ui组件,其中需要调用el-upload上传组件,但是想通过自定义按钮触发el-upload组件的上传
<el-upload
:action="$Config.apiUrl+'/FormForComponent/importExcel'"
:limit="1"
:with-credentials="true"
ref="upload"
:data='upLoadData'
:on-success="uploadSuccess"
/>
利用ref找到DOM对象,调用方法为this.$refs['upload'].$children[0].$refs.input.click()
这里点击后是可以直接调用组件上传的方法,有个小问题,上传事件只会触发一次,所以需要在组件上传完成后的钩子里将上传文件列表清除掉
uploadSuccess (data) {
this.$refs.upload.clearFiles()
},
下面备注下用el-upload时常用的一些方法
- 上传时增加额外参数data 类型为Object