Vue3&el-upload 实现在组建之外提供一个上传按钮

有这么一个需求,在使用el-upload组件进行文件上传的时候,除了组件默认提供的上传按钮,还要在列表的最前面自定义的加一个上传按钮,点击这个自定义的上传按钮要实现和点击默认的上传按钮同样的全套的上传流程

默认的:

我要的效果:

也就是除了默认的上传还有一个自己定义的上传按钮。

实现的话也很简单:

首先加一个和之前点击的入口,注意是在 el-upload 标签外定义的

                    <!-- 自定义的点击上传入口-->
                    <div class="el-upload el-upload--picture-card" 
                        style="margin-bottom: 6px;width: 146px;" @click="chooseFile">
                        <el-button type="primary" >上传本地文件</el-button>
                    </div>

                    <!-- 历史图片展示区 -->
                    <el-upload 
                    ...
                    </el-upload>

然后代码实现模拟点击

<script lang="ts" setup>
            ...


        const triggerRef = ref<InstanceType<typeof ElButton>>()
        const uploadRef = ref<InstanceType<typeof ElUpload>>()
        //自定义上传文件
        const chooseFile = ()=> {
            //模拟点击上传按钮
            triggerRef.value?.$.vnode.el?.click();
        }

        ...
</script>

关键的一步就是模拟点击上传的代码。

有疑问可以私信或者留言,这个效果已经实现并发布在我的OCR/表格识别重做的网站里面的,可以先去体验一下是不是你想要的效果。

相关推荐
老码沉思录38 分钟前
React Native 全栈开发实战班 - 原生功能集成之地理位置服务
javascript·react native·react.js
莫尔道嘎老范2 小时前
vue+vite前端项目ci过程中遇到的问题
前端·vue.js·ci/cd
谈谈叭2 小时前
Vue3中实现插槽使用
前端·vue.js·前端框架·npm
new出一个对象4 小时前
react+hook+vite项目使用eletron打包成桌面应用+可以热更新
前端·react.js·前端框架
GoFly开发者4 小时前
GoFly框架使用vue flow流程图组件说明
前端·vue.js·流程图·vue flow流程图
幸运小圣5 小时前
Vue3 -- 环境变量的配置【项目集成3】
前端·vue.js
如鹿觅水5 小时前
通过JS删除当前域名中的全部COOKIE教程
服务器·前端·javascript
#sakura5 小时前
web-02
前端
Lipn5 小时前
前端怎么获取视口大小
开发语言·前端·javascript
晓风伴月5 小时前
腾讯IM web版本实现迅飞语音听写(流式版)
前端·语音识别·讯飞语音听写