From e065b2b79af6405ce3791c7d4b004c8a3c89ba7b Mon Sep 17 00:00:00 2001 From: fit2cloud-chenyw Date: Mon, 1 Apr 2024 13:52:58 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20iframe=E5=B5=8C=E5=85=A5=E5=BC=8F?= =?UTF-8?q?=E4=BB=AA=E8=A1=A8=E6=9D=BF=E6=A0=91=E6=97=A0=E6=B3=95=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E6=96=B0=E9=A1=B5=E9=9D=A2=E9=A2=84=E8=A7=88=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/dashboard/DbToolbar.vue | 16 +++++++++++++++- core/core-frontend/src/permission.ts | 2 +- .../data-visualization/PreviewCanvas.vue | 12 ++++++++++-- .../views/data-visualization/PreviewHead.vue | 19 +++++++++++++++++-- 4 files changed, 43 insertions(+), 6 deletions(-) diff --git a/core/core-frontend/src/components/dashboard/DbToolbar.vue b/core/core-frontend/src/components/dashboard/DbToolbar.vue index 40a7d2f7de..6ff00cc466 100644 --- a/core/core-frontend/src/components/dashboard/DbToolbar.vue +++ b/core/core-frontend/src/components/dashboard/DbToolbar.vue @@ -25,6 +25,7 @@ import { copyStoreWithOut } from '@/store/modules/data-visualization/copy' import TabsGroup from '@/custom-component/component-group/TabsGroup.vue' import DeResourceGroupOpt from '@/views/common/DeResourceGroupOpt.vue' import OuterParamsSet from '@/components/visualization/OuterParamsSet.vue' +import { XpackComponent } from '@/components/plugin' const { t } = useI18n() const dvMainStore = dvMainStoreWithOut() const snapshotStore = snapshotStoreWithOut() @@ -102,7 +103,8 @@ const previewOuter = () => { } canvasSave(() => { const url = '#/preview?dvId=' + dvInfo.value.id - window.open(url, '_blank') + const newWindow = window.open(url, '_blank') + initOpenHandler(newWindow) }) } @@ -323,6 +325,17 @@ const onDvNameChange = () => { } const appStore = useAppStoreWithOut() const isDataEaseBi = computed(() => appStore.getIsDataEaseBi) + +const openHandler = ref(null) +const initOpenHandler = newWindow => { + if (openHandler?.value) { + const pm = { + methodName: 'initOpenHandler', + args: newWindow + } + openHandler.value.invokeMethod(pm) + } +}