import React from 'react'; import { Layout } from 'antd'; import { LayoutFrameSider } from './LayoutFrameSider'; import { useLayoutFrame } from './layout'; import { useNamedTheme } from '../../../hooks'; export interface LayoutFrameLayoutProps { showHeader?: boolean; showFooter?: boolean; footer?: React.ReactNode; header?: React.ReactNode; } export const LayoutFrameLayout: React.FC = (props) => { const { header, footer, children } = props; let { showHeader, showFooter } = props; if (typeof showHeader !== 'boolean') { showHeader = Boolean(header); } if (typeof showFooter !== 'boolean') { showFooter = Boolean(footer); } const layout = useLayoutFrame(); const [theme] = useNamedTheme(); // height: '100%' 确保布局不变 return ( {header && showHeader && ( {header} )} {children} {footer && showFooter && {footer}} ); };