From ce661f0664e03fb7b7d798cf97fdd1489f4190df Mon Sep 17 00:00:00 2001 From: zhouwenxuan <1175765986@qq.com> Date: 星期五, 01 十二月 2023 16:29:06 +0800 Subject: [PATCH] 机构 --- src/views/components/details.vue | 37 ++++++++++++++++++++++++++++++++++++- 1 files changed, 36 insertions(+), 1 deletions(-) diff --git a/src/views/components/details.vue b/src/views/components/details.vue index 985fbe8..2daf2e7 100644 --- a/src/views/components/details.vue +++ b/src/views/components/details.vue @@ -19,7 +19,7 @@ <div class="title">{{state.content.title}}</div> <el-divider border-style="dashed"/> <div class="time">更新时间:{{state.content.updateTime?state.content.updateTime:state.content.createTime}}</div> - <div v-html="state.content.content"></div> + <div v-html="state.content.content" @click="showFile($event)"></div> </div> <div class="main" v-if="state.firstClass == '法律法规'"> <div class="title">{{state.content.title}}</div> @@ -83,6 +83,8 @@ import {ElMessage} from "element-plus"; import {getLawsDetails, getNoticeDetails, getPublishDetails} from "../../api/home/homePage"; import { getDict } from "@/api/login" +import axios from "axios"; +import {getToken} from "@/utils/auth"; const route = useRoute() const router = useRouter() @@ -143,6 +145,39 @@ } } +const showFile = (e) => { + if(e.target.nodeName === 'A'){ + console.log("e",e) + e.preventDefault(); + const file = { + fileUrl: e.target.href, + fileName: e.target.download + } + axios.get( file.fileUrl,{ + headers: + { + 'Content-Type': 'application/json', + 'Authorization':getToken(), + }, + responseType: 'blob' + } + ).then(res=>{ + if (res) { + const link = document.createElement('a') + let blob = new Blob([res.data],{type: res.data.type}) + link.style.display = "none"; + link.href = URL.createObjectURL(blob); // 创建URL + link.setAttribute("download", file.fileName); + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } else { + this.$message.error('获取文件失败') + } + this.handleClose(); + }) + } +} const back = ()=>{ if(state.firstClass == '通知公告'){ -- Gitblit v1.9.2