Vue3封装函数组件(ElImageViewer)预览图片

news2024/12/24 3:25:18

目录结构
在这里插入图片描述
index.vue

<template>
    <el-image-viewer v-if="show" v-bind="$attrs" hide-on-click-modal @close="show = false" />
</template>
 
<script setup>
import { ref, watch } from "vue"
import { ElImageViewer } from "element-plus" //自定义函数组件无法使用全局组件,需要单独引入

const props = defineProps({
    visible: {
        type: Boolean,
        default: false,
    },
    remove: {
        type: Function, //传入createApp中移除节点的方法
        default: null,
    },
    // api文档:https://element-plus.org/zh-CN/component/image.html#image-viewer-attributes
})

const show = ref(props.visible)
// 监听显示的消失,需要移除dom
watch(() => show.value, (val) => {
    !val && props.remove()
})
</script>

index.js

import { createApp } from 'vue'
import index from './index.vue'

export default (options) => {
    // 创建一个节点,并将组件挂载上去
    const root = document.createElement('div')
    document.body.appendChild(root)

    const app = createApp(index, {
        ...options, visible: true, remove() {
            app.unmount(root) //创建完后要进行销毁
            document.body.removeChild(root)
        }
    })
    return app.mount(root)
}

使用方法在js||vue文件中

import previewImage from "@/fcComponents/previewImage"
previewImage({ urlList: ["https://fuss10.elemecdn.com/a/3f/3302e58f9a181d2509f3dc0fa68b0jpeg.jpeg"] })

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/796422.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

D2L学习记录-10-词嵌入word2vec

NLP-1-词嵌入(word2vec) 参考: 《动手学深度学习 Pytorch 第1版》第10章 自然语言处理 第1、2、3 和 4节 (词嵌入) 词嵌入 (word2vec)&#xff1a; 词向量&#xff1a;自然语言中&#xff0c;词是表义的基本单元。词向量是用来表示词的向量。词嵌入 (word embedding)&#x…

余切拉普拉斯算子推导 cotangent Laplace-Beltrami operator

欢迎关注更多精彩 关注我&#xff0c;学习常用算法与数据结构&#xff0c;一题多解&#xff0c;降维打击。 参考自polygon mesh proccessing这本书 基本思路及原理 余切拉普拉斯算子是一种考虑了网格底层几何联系的一种算子&#xff0c;在网格平滑&#xff0c;参数化等算法中…

no instance(s) of type variable(s) R exist so that void conforms to R 解决方法

一、问题描述 使用函数式编程stream().map()的时候报错&#xff1a; no instance(s) of type variable(s) R exist so that void conforms to R 二、报错原因 map()函数需要有一个返回值&#xff0c;但是setter方法返回值为void,即setChildren()返回值为void. 三、解决方法 …

SpringBoot前后端分离项目中实现将图片上传至Linux服务器(极简)

FileController /*** 文件上传至服务器 */ ApiOperation("文件上传") PostMapping("/upload") public R upload(MultipartFile file){String uploadUrl fileService.upload(file);return R.ok().message("文件上传成功").data("url",…

一遍看懂面试算法——二叉树

目录 二叉树的种类 满二叉树 完全二叉树 二叉搜索树 平衡二叉搜索树 二叉树的存储方式 二叉树的遍历方式 二叉树的递归遍历 二叉树的迭代遍历 前序遍历&#xff08;迭代法&#xff09; 中序遍历&#xff08;迭代法&#xff09; 后序遍历&#xff08;迭代法&#xff…

Python-如何使用正则表达式

如何利用Python使用正则表达式 目录 正则表达式常用匹配规则 ​编辑re库的使用 match()方法&#xff1a; search()方法: findall()方法 : sub()方法: compile()方法; 通用匹配 贪婪与非贪婪匹配 贪婪匹配 非贪婪匹配 修饰符 转义匹配 正则表达式是处理字符的强大…

高电压放大器ATA-2021B技术指标

随着ATA-2021H高压放大器的升级改版&#xff0c;新品ATA-2021B高电压放大器走进了更多工程师、研究人员的视野。相比于升级之前&#xff0c;ATA-2021B高压放大器拥有了更多更好地优势&#xff0c;可以更好地的帮助研究人员高效完成测试项目。今天Aigtek小编就带大家了解一下关于…

liunx时间慢几分钟,定时更新系统时间

#&#xff01;/bin/sh hwclock --hctosys echo "执行成功" 定时5分钟执行一次

minitab学习系列(2)--DOE逐步方法选择

系列文章目录 文章目录 系列文章目录前言一、DOE>因子>分析因子设计>逐步二、DOE>因子>分析因子设计>逐步>层次结构总结 前言 一、DOE>因子>分析因子设计>逐步 逐步删除和向模型中添加项以确定有用的项的子集。Minitab提供了三个常用过程&…

油画欣赏|《沧海的线条》在群山之间

《沧海的线条》80x65cm陈可之•2006年绘油画《沧海的线条》&#xff0c;通过绘画艺术的手法&#xff0c;描绘出三峡群山之间那一层层波浪般的纹理&#xff0c;展现出天地间岁月的古老沧桑变迁。此作品是陈可之先生百余幅三峡系列作品之一。夜&#xff0c;群山高大挺立。没有植被…

[SSM]Spring中的JdbcTemplate

目录 十三、JdbcTemplate 13.1环境准备 13.2新增 13.3修改 13.4删除 13.5查询 13.6查询一个值 13.7批量添加 13.8批量修改 13.9批量删除 13.10使用回调函数 13.11使用德鲁伊连接池 十三、JdbcTemplate JdbcTemplate是Spring提供的一个JDBC模板类&#xff0c;是对JDBC…

el-tree数据渲染超出省略

el-tree数据渲染超出省略 问题 <el-tree:data"deptOptions":props"defaultProps":expand-on-click-node"false":filter-node-method"filterNode"ref"tree"default-expand-allhighlight-currentnode-click"handleNo…

来自随身WIFI不限流量的暴击,今天你被割韭菜了吗?

大家好&#xff0c;前几天很多小伙伴私信葫芦妹&#xff0c;反馈买了个无限流量随身WIFI&#xff0c;一开始挺好用的&#xff0c;怎么用着用着不行了呢&#xff1f;必须让我给普及下。那么既然这些小伙伴需求这么强烈&#xff0c;那么今天葫芦妹得赶紧来教你如何辨别随身WIFI的…

【100天精通python】Day17:常见异常类型与解决,异常处理语句

目录 一 python 的常见异常类型与解决 二 常用的异常处理语句 1 try...except语句 2 try...except...else语句 3 try...except...finally语句 4 使用raise语句抛出异常 5 自定义异常类型 6 异常链处理 在 Python中&#xff0c;异常是在程序运行时发生的错误或意外情…

Spring Boot实践二 --Web开发

一、模板引擎简介 在之前的示例中&#xff0c;我们通过RestController来处理请求&#xff1a; package com.example.demospringboot.web;import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping;Re…

1.Web API基本认知

变量声明 const优先&#xff0c;尽量使用const ●const声明的值不能更改&#xff0c;而且const声明变量的时候需要里面进行初始化 ●简单数据类型 用const声明后不能修改值 ●但是对于 引用数据类型&#xff0c;const声明的变量&#xff0c;里面存的不是值&#xff0c;是地址&a…

spring-authorization-server (1.1.1)自定义认证

前言 注意&#xff1a;我本地没有生成公钥和私钥&#xff0c;所以每次启动项目jwkSource都会重新生成&#xff0c;导致之前认证的token都会失效&#xff0c;具体如何生成私钥和公钥以及怎么配置到授权服务器中&#xff0c;网上有很多方法自行实现即可 之前有个项目用的0.0.3的…

ATA-2021B高压放大器经典应用合集(内附技术指标)

多年来Aigtek安泰电子一直潜心于电子测试仪器的研发&#xff0c;已拥有完善的功率放大器产品线&#xff0c;并针对超声声学、无损检测、电磁驱动、生物医疗、微流控、材料测试等主流各行业领域测试建立的了专属测试方案&#xff0c;在国内功率放大器行业及市场中获得认可&#…

【智能可视化---01】揭示Python AI中Matplotlib的魅力,提升数据洞察力!探索AI 中的Matplotlib,这一篇就够了!

Success keeps eluding me yet my passion abides. 🎯作者主页: 追光者♂🔥 🌸个人简介: 💖[1] 计算机专业硕士研究生💖 🌟[2] 2022年度博客之星人工智能领域TOP4🌟 🏅[3] 阿里云社区特邀专家博主🏅 🏆[4] CSDN-人工智能领域优质创作者…

团队运营能力不足?「企业学院」3大板块全面提升运营技能

『矩阵通』本期上线「企业学院」功能&#xff0c;内容包含新媒体培训课程、行业动态资讯及新媒体营销、矩阵运营的干货指南等&#xff0c;帮助企业提高团队运营能力&#xff0c;对此功能感兴趣的客户可前往矩阵通官网&#xff08;matrix.newrank.cn&#xff09;体验。 在当今数…