diff --git a/core/core-frontend/package.json b/core/core-frontend/package.json index b70396c3a4..aa153cf001 100644 --- a/core/core-frontend/package.json +++ b/core/core-frontend/package.json @@ -45,6 +45,7 @@ "nprogress": "^0.2.0", "pinia": "^2.0.32", "qs": "^6.11.0", + "screenfull": "^6.0.2", "snowflake-id": "^1.1.0", "tinymce": "^5.8.2", "vant": "^4.8.3", diff --git a/core/core-frontend/src/assets/svg/icon_pc_fullscreen.svg b/core/core-frontend/src/assets/svg/icon_pc_fullscreen.svg new file mode 100644 index 0000000000..8c2bdacdc5 --- /dev/null +++ b/core/core-frontend/src/assets/svg/icon_pc_fullscreen.svg @@ -0,0 +1 @@ + diff --git a/core/core-frontend/src/views/dashboard/DashboardPreviewShow.vue b/core/core-frontend/src/views/dashboard/DashboardPreviewShow.vue index f71d5894d0..12a022e2f6 100644 --- a/core/core-frontend/src/views/dashboard/DashboardPreviewShow.vue +++ b/core/core-frontend/src/views/dashboard/DashboardPreviewShow.vue @@ -12,7 +12,8 @@ import { useRequestStoreWithOut } from '@/store/modules/request' import { usePermissionStoreWithOut } from '@/store/modules/permission' import { useMoveLine } from '@/hooks/web/useMoveLine' import { Icon } from '@/components/icon-custom' -import { download2AppTemplate, downloadCanvas, downloadCanvas2 } from '@/utils/imgUtils' +import { download2AppTemplate, downloadCanvas2 } from '@/utils/imgUtils' +import screenfull from 'screenfull' const dvMainStore = dvMainStoreWithOut() const previewCanvasContainer = ref(null) @@ -153,6 +154,13 @@ const mouseleave = () => { appStore.setArrowSide(false) } +const fullscreenPreview = () => { + const ele = document.getElementById('de-preview-content') //指定全屏区域元素 + if (screenfull.isEnabled) { + screenfull.request(ele) + } +} + defineExpose({ getPreviewStateInfo }) @@ -208,8 +216,9 @@ defineExpose({ @reload="reload" @download="downloadH2" @downloadAsAppTemplate="downloadAsAppTemplate" + @fullscreenPreview="fullscreenPreview" /> -
+
{ } const isDataEaseBi = computed(() => appStore.getIsDataEaseBi) +const fullscreenPreview = () => { + emit('fullscreenPreview', dvInfo.value.id) +} + const reload = () => { emit('reload', dvInfo.value.id) } @@ -102,6 +106,12 @@ const initOpenHandler = newWindow => {
+ + + 全屏