LayoutContent.tsx
958 Bytes
import { defineComponent } from 'vue';
import { Layout } from 'ant-design-vue';
// hooks
import { ContentEnum } from '/@/enums/appEnum';
import { appStore } from '/@/store/modules/app';
// import { RouterView } from 'vue-router';
import PageLayout from '/@/layouts/page/index';
import FrameLayout from '/@/layouts/iframe/index.vue';
import { useSetting } from '/@/hooks/core/useSetting';
export default defineComponent({
name: 'DefaultLayoutContent',
setup() {
const { projectSetting } = useSetting();
return () => {
const { getProjectConfig } = appStore;
const { contentMode } = getProjectConfig;
const wrapClass = contentMode === ContentEnum.FULL ? 'full' : 'fixed';
return (
<Layout.Content class={`layout-content ${wrapClass} `}>
{{
default: () => [<PageLayout />, projectSetting.canEmbedIFramePage && <FrameLayout />],
}}
</Layout.Content>
);
};
},
});