From cacb91dff4e574191e4f9b3ed2b854458f0d5425 Mon Sep 17 00:00:00 2001
From: duanliangtao <48194157+duanliangtao@users.noreply.github.com>
Date: Sun, 29 Sep 2024 16:46:32 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dticket=E5=A4=B1=E6=95=88?=
=?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/modules/volunteer/mall/category.vue | 71 ++++++++++---------
src/views/modules/volunteer/mall/index.vue | 71 ++++++++++---------
2 files changed, 78 insertions(+), 64 deletions(-)
diff --git a/src/views/modules/volunteer/mall/category.vue b/src/views/modules/volunteer/mall/category.vue
index 8728dcb27..a0bb79e6f 100644
--- a/src/views/modules/volunteer/mall/category.vue
+++ b/src/views/modules/volunteer/mall/category.vue
@@ -26,46 +26,53 @@ export default {
created() {
// 此处请求后端,获取一个ticket票据
http.get("/auth/sso/getTicket")
- .then(({data: res}) => {
- let ticket = res.data
- console.log('ticket:', ticket)
- this.iframeSrc = "../../../epmet-voluntary-mall-admin/pms/productCategory?target=_blank&ticket=" + ticket
- })
+ .then(({ data: res }) => {
+ let ticket = res.data;
+ console.log('ticket:', ticket);
+ this.iframeSrc = "../../../epmet-voluntary-mall-admin/pms/productCategory?ticket=" + ticket;
+ });
},
methods: {
// 监听 iframe 加载完成事件
onIframeLoad() {
- // 获取 iframe 的内容窗口
- const iframe = this.$refs.childIframe;
- const iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
+
+ if(this.iframeSrc==''){
+ return;
+ }
- if (iframeDocument) {
- const styleElement = iframeDocument.createElement('style');
- styleElement.type = 'text/css';
-
- const newStyles = `
- #app .main-container {
- margin-left: 0px !important;
- }
- #app .sidebar-container {
- display: none !important;
- }
- .navbar {
- display: none !important;
- }
- `;
-
- styleElement.appendChild(iframeDocument.createTextNode(newStyles));
-
- iframeDocument.head.appendChild(styleElement);
+ const iframe = this.$refs.childIframe;
+
+ if (this.iframeSrc.indexOf("ticket")!== -1) {
+ // 将 iframeSrc 设置为新的 URL(去掉了 ticket 参数)
+ this.iframeSrc = "../../../epmet-voluntary-mall-admin/pms/productCategory";
+ }else{
+ const iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
- // 显示 iframe
- iframe.style.display = 'block';
+ if (iframeDocument) {
+ const styleElement = iframeDocument.createElement('style');
+ styleElement.type = 'text/css';
+
+ const newStyles = `
+ #app .main-container {
+ margin-left: 0px !important;
+ }
+ #app .sidebar-container {
+ display: none !important;
+ }
+ .navbar {
+ display: none !important;
+ }
+ `;
+
+ styleElement.appendChild(iframeDocument.createTextNode(newStyles));
+ iframeDocument.head.appendChild(styleElement);
+
+ // 显示 iframe
+ iframe.style.display = 'block';
+ }
}
+
}
}
};
-
-
diff --git a/src/views/modules/volunteer/mall/index.vue b/src/views/modules/volunteer/mall/index.vue
index 8ef16ac3d..76fe73744 100644
--- a/src/views/modules/volunteer/mall/index.vue
+++ b/src/views/modules/volunteer/mall/index.vue
@@ -26,46 +26,53 @@ export default {
created() {
// 此处请求后端,获取一个ticket票据
http.get("/auth/sso/getTicket")
- .then(({data: res}) => {
- let ticket = res.data
- console.log('ticket:', ticket)
- this.iframeSrc = "../../../epmet-voluntary-mall-admin/pms/product?target=_blank&ticket=" + ticket
- })
+ .then(({ data: res }) => {
+ let ticket = res.data;
+ console.log('ticket:', ticket);
+ this.iframeSrc = "../../../epmet-voluntary-mall-admin/pms/product?ticket=" + ticket;
+ });
},
methods: {
// 监听 iframe 加载完成事件
onIframeLoad() {
- // 获取 iframe 的内容窗口
- const iframe = this.$refs.childIframe;
- const iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
+
+ if(this.iframeSrc==''){
+ return;
+ }
- if (iframeDocument) {
- const styleElement = iframeDocument.createElement('style');
- styleElement.type = 'text/css';
-
- const newStyles = `
- #app .main-container {
- margin-left: 0px !important;
- }
- #app .sidebar-container {
- display: none !important;
- }
- .navbar {
- display: none !important;
- }
- `;
-
- styleElement.appendChild(iframeDocument.createTextNode(newStyles));
-
- iframeDocument.head.appendChild(styleElement);
+ const iframe = this.$refs.childIframe;
+
+ if (this.iframeSrc.indexOf("ticket")!== -1) {
+ // 将 iframeSrc 设置为新的 URL(去掉了 ticket 参数)
+ this.iframeSrc = "../../../epmet-voluntary-mall-admin/pms/product";
+ }else{
+ const iframeDocument = iframe.contentDocument || iframe.contentWindow.document;
- // 显示 iframe
- iframe.style.display = 'block';
+ if (iframeDocument) {
+ const styleElement = iframeDocument.createElement('style');
+ styleElement.type = 'text/css';
+
+ const newStyles = `
+ #app .main-container {
+ margin-left: 0px !important;
+ }
+ #app .sidebar-container {
+ display: none !important;
+ }
+ .navbar {
+ display: none !important;
+ }
+ `;
+
+ styleElement.appendChild(iframeDocument.createTextNode(newStyles));
+ iframeDocument.head.appendChild(styleElement);
+
+ // 显示 iframe
+ iframe.style.display = 'block';
+ }
}
+
}
}
};
-
-