From 7ecca2a5e7a9c9ae811b68dc98e05c689b18aca6 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周日, 04 5月 2025 15:41:43 +0800
Subject: [PATCH] 222
---
HIAWms/web/src/components/PreviewDialog/index.vue | 65 ++++++++++++++++++++++++++++++++
1 files changed, 65 insertions(+), 0 deletions(-)
diff --git a/HIAWms/web/src/components/PreviewDialog/index.vue b/HIAWms/web/src/components/PreviewDialog/index.vue
new file mode 100644
index 0000000..515d71e
--- /dev/null
+++ b/HIAWms/web/src/components/PreviewDialog/index.vue
@@ -0,0 +1,65 @@
+<template>
+ <Dialog
+ v-model="visible"
+ :append-to-body="true"
+ :width="1200"
+ :show-close="true"
+ >
+ <template #title>
+ <div class="preview-dialog__header">
+ <span>棰勮</span>
+ <div class="preview-dialog__header--close" @click="handleClose">
+ <span class="iconfont icon-guanbi"></span>
+ </div>
+ </div>
+ </template>
+ <div class="preview-dialog">
+ <div class="preview-dialog__content">
+ <iframe :src="url" frameborder="0" width="100%" height="100%"></iframe>
+ </div>
+ </div>
+ </Dialog>
+</template>
+
+<script setup lang="ts">
+import Dialog from '@/components/Dialog/index.vue'
+import { useVModel } from '@vueuse/core'
+const props = defineProps({
+ modelValue: {
+ type: Boolean,
+ required: true,
+ default: false,
+ },
+ url: {
+ type: String,
+ required: true,
+ default: 'http://www.baidu.com',
+ },
+})
+const emit = defineEmits(['update:modelValue'])
+const visible = useVModel(props, 'modelValue', emit)
+
+const handleClose = () => {
+ visible.value = false
+}
+</script>
+
+<style lang="scss" scoped>
+.preview-dialog__header {
+ display: flex;
+ justify-content: space-between;
+ width: 100%;
+
+ .preview-dialog__header--close {
+ cursor: pointer;
+ }
+}
+.preview-dialog__content {
+ height: 80vh;
+ width: 100%;
+ iframe {
+ height: 100%;
+ width: 100%;
+ }
+}
+</style>
--
Gitblit v1.9.3