首页IT科技elementui图片上传点击放大(解决ElementUI组件中el-upload上传图片不显示问题)

elementui图片上传点击放大(解决ElementUI组件中el-upload上传图片不显示问题)

时间2025-09-09 04:03:32分类IT科技浏览9408
导读:ElementUI组件中el-upload上传图片不显示 上传图片的方法有很多,我们可以通过input上传的功能来上传文件、文件夹。同时,我们也可以通过使用ElementUI中的el-upload标签来上传图片、视频。当我们使用el-upload来上传时往往出现上传的图片并不能显示的问题,如下图:...

ElementUI组件中el-upload上传图片不显示

上传图片的方法有很多                  ,我们可以通过input上传的功能来上传文件                  、文件夹                  。同时                           ,我们也可以通过使用ElementUI中的el-upload标签来上传图片                           、视频                           。当我们使用el-upload来上传时往往出现上传的图片并不能显示的问题        ,如下图:

此时         ,从图中可以看出图片已经上传                           ,但是并不显示图片                 ,又或者出现下图情况         ,刚上传图片时                           ,可以显示                 ,但是不久就出现下图情况,甚至图片又消失不见                           ,真是令人头大!

那么                          ,遇到这种问题的小可爱们,看过来啦!我们可以直接在before-upload事件中添加

this.imageUrl = URL.createObjectURL(file);

其中 imageUrl是图片的路径                  ,这样就可以解决图排尿显示的问题        。

直接上代码:

<template> <div class="dashboard-container"> <div class="dashboard-text">name: Upload 上传</div> <el-upload class="avatar-uploader" action="#" :show-file-list="false" :before-upload="beforeAvatarUpload"> <img v-if="https://www.jb51.net/article/imageUrl" :src="https://www.jb51.net/article/imageUrl" class="avatar"> <i v-else class="el-icon-plus avatar-uploader-icon"></i> </el-upload> </div> </template>
<script> export default { data() { return { imageUrl: } }, methods: { beforeAvatarUpload(file) { console.log(file) // 使图片显示 this.imageUrl = URL.createObjectURL(file); return false } } } </script>
<style> .avatar-uploader .el-upload { border: 1px dashed #d9d9d9; border-radius: 6px; cursor: pointer; position: relative; overflow: hidden; } .avatar-uploader .el-upload:hover { border-color: #409EFF; } .avatar-uploader-icon { font-size: 28px; color: #8c939d; width: 178px; height: 178px; line-height: 178px; text-align: center; } .avatar { width: 178px; height: 178px; display: block; } </style>

当然我们在对接后台接口时                          ,action属性要设置为 #         ,如上图         。

此外我们上传时还会发现                  ,该标签会走一遍本地的接口                           ,如下图:

所以我们要在before-upload事件中添加return false去阻止!下面我们看解决以后的效果:

图片可以正常显示!

element的上传图片后不显示照片的功能(原el-upload的修改)

默认的el-upload会上传后        ,显示照片;

修改功能:上传照片后         ,如果不符合要求                           ,则给出提示且保持原来的照片(即不上传新照片)

html代码:

<el-upload action="#" accept="image/jpeg, image/jpg" ref="upload" :limit="1" :file-list.sync="fileList" :http-request="httpRequest" :on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload" :on-remove="removeFile"> <el-button type="success" @click="handleBtnUpload()">上传</el-button> </el-upload>

有一个http-request方法                 ,在这个方法中判断照片是否符合要求         ,如果符合                           ,给handleAvatarSuccess这个上传成功事件传输一个新图片的url展示即可;

否则                 ,将原照片的url赋值即可

以上为个人经验,希望能给大家一个参考                           ,也希望大家多多支持本站                           。

声明:本站所有文章                          ,如无特殊说明或标注,均为本站原创发布                 。任何个人或组织                  ,在未征得本站同意时                          ,禁止复制        、盗用         、采集                           、发布本站内容到任何网站                 、书籍等各类媒体平台         。如若本站内容侵犯了原著者的合法权益        ,可联系我们进行处理                           。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
如何选择的优化排名公司(为您提供选购建议,满足您的需求)