perf: 优化管理端生产加载体验
- 图标与重型组件按需加载,优化菜单预取和页面请求链路 - 开启 gzip 与静态缓存并修复子路由 KeepAlive 冲突
This commit is contained in:
@@ -7,9 +7,14 @@ import type {
|
||||
} from '#/components/page/CardList.vue';
|
||||
import type { OfflineImpactCheck } from '#/views/ai/shared/offline-impact';
|
||||
|
||||
import { computed, h, markRaw, onMounted, ref } from 'vue';
|
||||
|
||||
import ElXMarkdown from 'vue-element-plus-x/es/XMarkdown/index.js';
|
||||
import {
|
||||
computed,
|
||||
defineAsyncComponent,
|
||||
h,
|
||||
markRaw,
|
||||
onMounted,
|
||||
ref,
|
||||
} from 'vue';
|
||||
|
||||
import { useAccess } from '@easyflow/access';
|
||||
import { EasyFlowFormModal } from '@easyflow/common-ui';
|
||||
@@ -40,6 +45,7 @@ import {
|
||||
ElMessage,
|
||||
ElMessageBox,
|
||||
ElPopover,
|
||||
ElSkeleton,
|
||||
} from 'element-plus';
|
||||
import { tryit } from 'radash';
|
||||
|
||||
@@ -67,6 +73,10 @@ import {
|
||||
|
||||
import WorkflowModal from './WorkflowModal.vue';
|
||||
|
||||
const ElXMarkdown = defineAsyncComponent(
|
||||
() => import('vue-element-plus-x/es/XMarkdown/index.js'),
|
||||
);
|
||||
|
||||
const { apiURL } = useAppConfig(import.meta.env, import.meta.env.PROD);
|
||||
|
||||
interface FieldDefinition {
|
||||
@@ -1007,11 +1017,16 @@ function handleHeaderButtonClick(data: any) {
|
||||
class="workflow-api-markdown-wrap"
|
||||
@click="handleApiDocClick"
|
||||
>
|
||||
<ElXMarkdown
|
||||
:markdown="apiDocMarkdown"
|
||||
:allow-html="true"
|
||||
:sanitize="false"
|
||||
/>
|
||||
<Suspense>
|
||||
<ElXMarkdown
|
||||
:markdown="apiDocMarkdown"
|
||||
:allow-html="true"
|
||||
:sanitize="false"
|
||||
/>
|
||||
<template #fallback>
|
||||
<ElSkeleton :rows="6" animated />
|
||||
</template>
|
||||
</Suspense>
|
||||
</div>
|
||||
</ElDialog>
|
||||
<HeaderSearch
|
||||
|
||||
Reference in New Issue
Block a user