二次封装 el-dialog 实现 全屏和最小化 功能

效果

在这里插入图片描述

封装后的组件

 <template>
  <el-dialog v-model="dialogVisible" :show-close="false" :fullscreen="fullscreen" draggable overflow>
    <template #header="{ close }">
      <div>
        <span style="font-weight: bolder">{{ title0 }}</span>
        <el-icon style="cursor: pointer; float: right" @click="close"><Close /></el-icon>
        <el-icon style="cursor: pointer; float: right; margin-right: 8px" @click="fullScreenFun"><FullScreen /></el-icon>
        <el-icon style="cursor: pointer; float: right; margin-right: 8px" @click="close"><Minus /></el-icon>
      </div>
    </template>
    <slot>默认内容</slot>

    <template #footer>
      <el-button @click="dialogVisible = false">取消</el-button>
      <el-button type="primary" @click="submit"> 确定 </el-button>
    </template>
  </el-dialog>
</template>

<script setup lang="tsx" name="assignRoleDialog">
import { ref } from "vue";
// 标题
const title0 = ref("默认标题");
//弹窗是否显示
const dialogVisible = ref(false);
//是否全屏
const fullscreen = ref(false);

//打开对话框
const openDialog = (title: string) => {
  title0.value = title;
  dialogVisible.value = true;
};
//关闭对话框
const closeDilog = () => {
  dialogVisible.value = false;
};

const fullScreenFun = () => {
  fullscreen.value = !fullscreen.value;
};

const emits = defineEmits(["fun"]);
const submit = () => {
  emits("fun");
};

defineExpose({
  openDialog,
  closeDilog
});
</script>

页面中使用

<template>
	<el-button @click="openDialogFun">haaha</el-button>
	<FullScreenDialog ref="hdialog" @fun="dfun">
      <el-scrollbar max-height="800px">
        <h2>111111</h2>
        <h2>111111</h2>
        <!-- <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2>
        <h2>111111</h2> -->
      </el-scrollbar>
    </FullScreenDialog>
</template>
<script lant=ts>
import FullScreenDialog from "@/components/FullScreenDialog/index.vue";
const hdialog = ref();

const openDialogFun = () => {
  hdialog.value!.openDialog("修改用户");
};
const dfun = () => {
  alert("执行业务代码……");
  hdialog.value.closeDilog();
};
</script>

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python operator模块这么用,效率杠杠的!

目录 1、基础操作符应用 🐍 1.1 加载operator模块 1.2 使用itemgetter进行排序 1.3 attrgetter与方法调用 2、高级功能探索 🔍 2.1 methodcaller的妙用 2.2 操作符重载与定制 3、结合lambda表达式 ✨ 3.1 lambda与operator模块协同工作 3.2 实战案例分析 4、结合…

nginx架构基本数据结构配置模块请求详解

nginx源码的目录结构&#xff1a; . ├── auto 自动检测系统环境以及编译相关的脚本 │ ├── cc 关于编译器相关的编译选项的检测脚本 │ ├── lib nginx编译所需要的一些库的检测脚本 │ ├── os 与平台相关的一些系统参…

【sqlmap命令学习及测试dvwa_SQL_Injection】

文章目录 1.sqlmap命令及 不同级别探索 能否注入命令option1.1 low等级1.2 Medium等级1. 3 High等级 2. 注入流程2.1 数据库2.2 指定数据库表名2.3 指定表的 字段名2.4 内容2.5 当前用户信息2.6 用户密码2.7 其他 1.sqlmap命令及 不同级别探索 能否注入 命令option sqlmap -u…

石家庄高校大学智能制造实验室数字孪生可视化系统平台项目验收

智能制造作为未来制造业的发展方向&#xff0c;已成为各国竞相发展的重点领域。石家庄高校大学智能制造实验室积极响应国家发展战略&#xff0c;结合自身优势&#xff0c;决定引进数字孪生技术&#xff0c;构建一个集教学、科研、生产于一体的可视化系统平台。 数字孪生可视化…

influxdb时序数据库使用

influxdb时序数据库使用 1.1.免费无云influx申请1.2.Telegraf安装1.3.influxdb安装mac安装Redhat && Centos安装docker安装Kubernetes安装windows安装 1.4.influx CLI 安装1.5.influx命令行界面1.5.influx配置项权限认证配置管理 API 令牌 InfluxDB 是一个开源分布式时…

kali Linux基本命令(超全)_kali linux命令

一、系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件- (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 cat /proc/cpu…

【从0实现React18】 (六) 完成commit提交流程并初步实现react-dom包,完成首屏渲染测试

前面&#xff0c;我们提到 React 更新流程有四个阶段&#xff1a; 触发更新&#xff08;Update Trigger&#xff09;调度阶段&#xff08;Schedule Phase&#xff09;协调阶段&#xff08;Reconciliation Phase&#xff09;提交阶段&#xff08;Commit Phase&#xff09; 之前…

安防监控视频平台LntonAIServer视频监控管理平台裸土检测算法技术核心和应用场景

LntonAIServer裸土检测算法是一种基于人工智能技术的创新解决方案&#xff0c;旨在实现对裸土地表的自动识别。以下是对该算法的详细分析&#xff1a; 技术基础&#xff1a; 1、该算法利用深度学习和计算机视觉技术&#xff0c;通过捕捉视频或图像中的关键信息&#xff0c;如…

【ES】--Elasticsearch的翻页详解

目录 一、前言二、from+size浅分页1、from+size导致深度分页问题三、scroll深分页1、scroll原理2、scroll可以返回总计数量四、search_after深分页1、search_after避免深度分页问题一、前言 ES的分页常见的主要有三种方式:from+size浅分页、scroll深分页、search_after分页。…

IT运维问题分析报告编写经验模版

IT运维问题分析报告编写经验&模版 为提高IT运维用户服务感知满意度&#xff0c;提高运维工作效率&#xff0c;完善运维基础设施建设&#xff0c;现对IT运维工作中存在的紧迫性问题进行分析总结&#xff0c;报告如下&#xff1a; 本文参考资料。专栏地址&#xff08;50运维…

期末考试结束,成绩如何快速发布?

随着期末考试的落幕&#xff0c;老师们又迎来了一项繁琐的任务将成绩单私信给学生家长。这项工作耗时耗力&#xff0c;而且极易出错&#xff0c;期末老师的工作已经足够繁重还要私发成绩&#xff0c;简直是雪上加霜。 好消息是&#xff0c;现在有了易查分小程序&#xff0c;只需…

MATLAB-振动问题:两自由度耦合系统自由振动

一、基本理论 二、MATLAB实现 以下是两自由度耦合系统自由振动质量块振动过程动画显示的MATLAB程序。 clear; clc; close allx0 1; D1 40; D12 8; D2 D1; m1 1; omega0 sqrt(D1/m1); k1 D12 / D1; k2 D12 / D2; k sqrt(k1 * k2); omegazh omega0 * sqrt(1 k); omeg…

不可编辑的加密word文件破解

文章目录 1 将word文件另存为xml格式2 使用记事本打开xml格式的word文件3 ctrlF查找w:enforcement4 将w:enforcement"1"改成w:enforcement"0"并保存5 用word打开xml格式的文件并另存为docx格式6 成功可以编辑 1 将word文件另存为xml格式 2 使用记事本打开x…

丙酮传感器TGS1820在呼吸气体丙酮含量分析检测中的应用

随着科技的进步&#xff0c;无创检测技术逐渐成为医疗保健领域的新宠。其中&#xff0c;基于呼吸气体的分析检测技术以其独特的优势受到了广泛关注。呼吸气中的挥发性有机化合物&#xff08;VOCs&#xff09;不仅为研究者们提供了关于人体健康状态的宝贵信息&#xff0c;而且它…

PKG打包sqlite3项目,如何添加node_sqlite3.node依赖

项目地址&#xff1a;https://github.com/helson-lin/pkg_sqlite 在ffandown项目内&#xff0c;由于项目使用了sqlite3&#xff0c;在跨平台打包的时候&#xff0c;除了本机外其他平台打包之后运行缺少node_sqlite3.node依赖。 为了解决问题&#xff0c;百度了很久&#xff0c…

为什么您需要将软件本地化为其他语言

将软件翻译成其他语言可以让用户和开发软件的公司受益。以下是软件翻译之所以重要的几个原因&#xff1a; 不断增加的受众&#xff1a;当软件被翻译成不同的语言时&#xff0c;世界各地的更多人都可以访问它。这使公司能够扩大客户群并增加销售额。 改善用户体验&#xff1a;用…

Java异常处理详解【入门篇】

Java异常处理详解【入门篇】 Java异常处理详解1. 异常的概念2. 异常的分类2.1 检查异常&#xff08;Checked Exception&#xff09;2.2 非检查异常&#xff08;Unchecked Exception&#xff09;2.3 错误&#xff08;Error&#xff09; 3. 异常处理机制3.1 try-catch3.2 finally…

1/7精确到100位,1000位,100000位怎么算?

双精度 Console.WriteLine("1/7的值是" (double)1 / 7);结果:0.14285714285714285 即使使用双精度浮点数&#xff0c;精确的位数也是有限的&#xff0c;如果想精确到小数点后100位&#xff0c;1000位&#xff0c;甚至更高哪&#xff1f; 朴素的除法 除数 余数 商…

麒麟桌面系统CVE-2024-1086漏洞修复

原文链接&#xff1a;麒麟桌面操作系统上CVE-2024-1086漏洞修复 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇在麒麟桌面操作系统上修复CVE-2024-1086漏洞的文章。漏洞CVE-2024-1086是一个新的安全漏洞&#xff0c;如果不及时修复&#xff0c;可能会对系统造成安全…