首页 > 其他分享 >element ui的el-upload上传组件中使用el-image的图片预览

element ui的el-upload上传组件中使用el-image的图片预览

时间:2023-05-11 16:22:27浏览次数:55  
标签:el image upload ui file 图片

问题

想在element ui的el-upload上传组件中使用el-image的图片预览,这样就可以放大和缩小还有多张图片切换
因为el-upload提供的是使用对话框查看图片,不能放大缩小还不能左右切换

说明

el-image组件内的预览功能是使用的el-image-viewer这个小组件实现的,所以我们直接导入调用这个组件即可
还有就是要设置一下层级z-index,不然图片可能在弹窗后面,如果不是对话框可以不用设置
参考文章1:https://www.cnblogs.com/it774274680/p/16739988.html
参考文章2:https://blog.csdn.net/ZYS10000/article/details/121881485

效果

image

代码

<template>
  <div class="app">
    <el-upload action="" list-type="picture-card" :on-preview="handlePictureCardPreview"
	:file-list="fileList"></el-upload>
	<image-viewer v-if="imgViewerVisible" :urlList="previewSrcList" :on-close="onClose" :z-index="2100" />
  </div>
</template>
import ImageViewer from "element-ui/packages/image/src/image-viewer";
export default {
  components: {
    ImageViewer,
  },
  data() {
    return {
      fileList: [],
	  previewSrcList:[],
      imgViewerVisible: false,
    };
  },
  methods: {
    handleRemove(file, fileList) {
      console.log(file, fileList);
    },
    handlePreview(file) {
		//把用户点击的那张图片放到第一个位置,这样打开就能看到自己点击的那张图片
		this.previewSrcList = this.fileList.filter(e => e.url !== file.url).map(e=> e.url);
		this.previewSrcList.unshift(file.url)
		//设置 图片查看器 进行显示
		this.imgViewerVisible = true;
    },
    onClose() {
      this.imgViewerVisible = false;
    }
  },
};
</script>

标签:el,image,upload,ui,file,图片
From: https://www.cnblogs.com/tn666/p/17391417.html

相关文章

  • el-tree 根据多个结果筛选树状图(增加checkbox勾选)
    <template><divclass="wrapper-jjy"><el-dialogtitle="接警员查找"v-model="jjyDialogVisible":draggable="true"width="735px"height="300":close-on-click-modal="true&q......
  • ElasticSearch组合多查询(must, should, must_not, filter)
    ElasticSearch组合多查询(must,should,must_not,filter)举个例子if(StringUtils.isNotEmpty(goodsSpu.getCategoryId())){filterBuilder.must(QueryBuilders.wildcardQuery("categoryId","*"+goodsSpu.getCategoryId()+"*"));}1.must文......
  • 模板元编程--TypeList算法--类型分割
    将一个数据列表按照要求尽心分割为两个类型。usinglist1=TypeList<char,double,float,longlong,int,int>;将大于4字节的分为一组,其他分为一组:贴入Fold函数,一会儿用到:template<typenameT>conceptTL=requires{typenameT::isTypeList;typenameT::ty......
  • Unindent does not match any outer indentation level
    出现这个报错是因为格式有问题。查看是否正确缩进,有没有对齐,还有有没有tab和空格混用。可以打开notepad++来查看格式是否出现问题。1.下图的问题if前面有一个空格,应该删去。 2.前面都多出了一个空格,要删除。 3.这个也是因为多出了一个空格所以报错 ......
  • nginx 10061: No connection could be made because the target machine actively ref
    nginx10061:Noconnectioncouldbemadebecausethetargetmachineactivelyrefusedit nginx重载配置一直有些不生效,查看后,发现nginx有4个,全部关闭掉,再重开nginx,正常了nginx.exe-squit,可以把正常的nginx退出掉,其他的nginx,任务管理器强制关闭掉startnginx开启nginx,o......
  • 修改el-tag的样式
    修改el-tag的样式at-ruleorselectorexpectedcss(css-ruleorselectorexpected)<stylescoped>:deep.el-tag{margin-bottom:1em;}</style>如果没用的话请检查你的路径是不是有问题是不是css名写错了......
  • 什么是 SELinux?为什么都想要禁用它?
    什么是SELinux?为什么都想要禁用它?原创 入门小站 入门小站 2023-05-0621:30 发表于湖北收录于合集#Linux778个入门小站分享运维技巧及10k+Stars的开源项目241篇原创内容公众号【Linux250个常用命令速查手册】关注【入门小站】,后台回复「1001......
  • 6000+字讲透ElasticSearch 索引设计
    ElasticSearch索引设计在MySQL中数据库设计非常重要,同样在ES中数据库设计也是非常重要的概述我们创建索引就像创建表结构一样,必须非常慎重的,索引如果创建不好后面会出现各种各样的问题索引设计的重要性索引创建后,索引的分片只能通过_split和_shrink接口对其进行成倍的......
  • 为什么SELECT * 会导致查询效率低
    1.不需要的列会增加数据传输时间和网络开销1.用“SELECT*”数据库需要解析更多的对象、字段、权限、属性等相关内容,在SQL语句复杂,硬解析较多的情况下,会对数据库造成沉重的负担。2.增大网络开销;*有时会误带上如log、IconMD5之类的无用且大文本字段,数据传输size会几何增涨。......
  • .Net Core 4. VS2022 + Core6.0 + Razor 设置model特性改变显示的属性名称,通过@page指
    通过Model的特性修改显示的内容/规则目前在Index页面上,显示的表头都是model的字段名,在实际项目中通常不会这么做,这里我们修改一下Model部分来让表头显示的更加直观。1.引入System.ComponentModel.DataAnnotations.Schema,也可以事后根据提示自动添加。2.[Display(Na......