|
@@ -1,11 +1,39 @@
|
|
|
<template>
|
|
|
- <div class="demo-image__preview">
|
|
|
+ <!-- 图片预览 -->
|
|
|
+ <div class="demo-image__preview" v-if="copyFileType === '.png'">
|
|
|
<el-image-viewer
|
|
|
v-if="showImageViewer"
|
|
|
:url-list="[previewData]"
|
|
|
@close="closeImgPreview"
|
|
|
/>
|
|
|
</div>
|
|
|
+ <!-- 视频预览 -->
|
|
|
+ <el-dialog
|
|
|
+ v-model="showImageViewer"
|
|
|
+ width="40%"
|
|
|
+ top="40vh"
|
|
|
+ draggable
|
|
|
+ title="预览"
|
|
|
+ v-if="copyFileType === '.mp4'"
|
|
|
+ :before-close="closeImgPreview"
|
|
|
+ >
|
|
|
+ <video
|
|
|
+ :src="previewData"
|
|
|
+ controls
|
|
|
+ :style="{ width: '100%', height: '100%' }"
|
|
|
+ ></video>
|
|
|
+ </el-dialog>
|
|
|
+ <!-- 音频预览 -->
|
|
|
+ <el-dialog
|
|
|
+ v-model="showImageViewer"
|
|
|
+ width="40%"
|
|
|
+ title="预览"
|
|
|
+ draggable
|
|
|
+ v-if="copyFileType === '.mp3'"
|
|
|
+ :before-close="closeImgPreview"
|
|
|
+ >
|
|
|
+ <audio :src="previewData" controls></audio>
|
|
|
+ </el-dialog>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
@@ -24,8 +52,12 @@ const props = defineProps({
|
|
|
default: false,
|
|
|
},
|
|
|
previewData: {
|
|
|
- type: Object,
|
|
|
- default: () => {},
|
|
|
+ type: String,
|
|
|
+ default: "",
|
|
|
+ },
|
|
|
+ copyFileType: {
|
|
|
+ type: String,
|
|
|
+ default: "",
|
|
|
},
|
|
|
});
|
|
|
watch(
|
|
@@ -33,19 +65,13 @@ watch(
|
|
|
(newValue) => {
|
|
|
// console.log(111);
|
|
|
showImageViewer.value = newValue;
|
|
|
+ },
|
|
|
+ () => props.previewData,
|
|
|
+ (newValue) => {
|
|
|
+ console.log("previewData", newValue);
|
|
|
+ // showImageViewer.value = newValue;
|
|
|
}
|
|
|
);
|
|
|
-const url =
|
|
|
- "https://fuss10.elemecdn.com/a/3f/3302e58f9a181d2509f3dc0fa68b0jpeg.jpeg";
|
|
|
-const srcList = [
|
|
|
- "https://fuss10.elemecdn.com/a/3f/3302e58f9a181d2509f3dc0fa68b0jpeg.jpeg",
|
|
|
- "https://fuss10.elemecdn.com/1/34/19aa98b1fcb2781c4fba33d850549jpeg.jpeg",
|
|
|
- "https://fuss10.elemecdn.com/0/6f/e35ff375812e6b0020b6b4e8f9583jpeg.jpeg",
|
|
|
- "https://fuss10.elemecdn.com/9/bb/e27858e973f5d7d3904835f46abbdjpeg.jpeg",
|
|
|
- "https://fuss10.elemecdn.com/d/e6/c4d93a3805b3ce3f323f7974e6f78jpeg.jpeg",
|
|
|
- "https://fuss10.elemecdn.com/3/28/bbf893f792f03a54408b3b7a7ebf0jpeg.jpeg",
|
|
|
- "https://fuss10.elemecdn.com/2/11/6535bcfb26e4c79b48ddde44f4b6fjpeg.jpeg",
|
|
|
-];
|
|
|
const previewImg = ref(null);
|
|
|
const showImageViewer = ref(false); //组件是否显示
|
|
|
const emit = defineEmits(["closeImgPreview"]);
|
|
@@ -71,4 +97,14 @@ const closeImgPreview = () => {
|
|
|
width: 100%;
|
|
|
height: 200px;
|
|
|
}
|
|
|
+.video_box {
|
|
|
+ position: fixed;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ align-items: center;
|
|
|
+ background-color: #fff;
|
|
|
+ z-index: 10000;
|
|
|
+ /* top: 20%;
|
|
|
+ left: 40%; */
|
|
|
+}
|
|
|
</style>
|