Vben
2021-03-01 37669d067c43a3807df848f0caf67cbeab3e1b33
src/router/routes/modules/demo/iframe.ts
@@ -1,49 +1,47 @@
import type { AppRouteModule } from '/@/router/types';
import { PAGE_LAYOUT_COMPONENT } from '/@/router/constant';
import { LAYOUT } from '/@/router/constant';
const IFrame = () => import('/@/views/sys/iframe/FrameBlank.vue');
import { t } from '/@/hooks/web/useI18n';
export default {
  layout: {
    path: '/frame',
    name: 'Frame',
    component: PAGE_LAYOUT_COMPONENT,
    redirect: '/frame/antv',
    meta: {
      icon: 'mdi:page-next-outline',
      title: '外部页面',
    },
const iframe: AppRouteModule = {
  path: '/frame',
  name: 'Frame',
  component: LAYOUT,
  redirect: '/frame/doc',
  meta: {
    icon: 'ion:tv-outline',
    title: t('routes.demo.iframe.frame'),
  },
  routes: [
  children: [
    {
      path: '/antv',
      path: 'doc',
      name: 'Doc',
      component: IFrame,
      meta: {
        frameSrc: 'https://vvbin.cn/doc-next/',
        title: t('routes.demo.iframe.doc'),
      },
    },
    {
      path: 'antv',
      name: 'Antv',
      component: IFrame,
      meta: {
        frameSrc: 'https://2x.antdv.com/docs/vue/introduce-cn/',
        title: 'antVue文档(内嵌)',
        afterCloseLoading: true,
        title: t('routes.demo.iframe.antv'),
      },
    },
    {
      path: '/doc',
      name: 'Doc',
      component: IFrame,
      meta: {
        frameSrc: 'https://vvbin.cn/docs/',
        title: '项目文档(内嵌)',
        afterCloseLoading: true,
      },
    },
    {
      path: '/docExternal',
      path: 'https://vvbin.cn/doc-next/',
      name: 'DocExternal',
      component: IFrame,
      meta: {
        externalLink: 'https://vvbin.cn/docs/',
        title: '项目文档(外链)',
        title: t('routes.demo.iframe.docExternal'),
      },
    },
  ],
} as AppRouteModule;
};
export default iframe;