@orca-fe/pocket
Version:
UI components by orca-team
51 lines (50 loc) • 1.92 kB
TypeScript
import React from 'react';
import type { MenuProps } from './Menu';
import type { MenuItemType } from './menuUtils';
import type { OpenKeysType } from './Menu/MenuContext';
export interface MenuLayoutProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'title'> {
/** 传入自定义的路径 */
pathname?: string;
/** 一级菜单所在位置 */
mainMenuSide?: 'top' | 'left';
/** 是否在顶部渲染一级菜单,当 mainMenuSide = left 时,该配置项不生效 */
useTopMenu?: boolean;
/** 菜单数据 */
menu?: MenuItemType[];
showHeader?: boolean;
/** 顶栏的额外内容(最右侧) */
headerExtra?: React.ReactNode;
/** 自定义 logo */
logo?: React.ReactNode;
/** 自定义 大标题 */
title?: React.ReactNode;
/** 是否支持侧边菜单收起 */
collapsible?: boolean;
/** 是否侧边菜单收起 */
collapse?: boolean;
/** 侧边菜单收起事件 */
onCollapseChange?: (collapse: boolean) => void;
/** 顶栏的主题色 */
themeHeader?: MenuProps['theme'];
/** 侧边栏的主题色 */
themeSide?: MenuProps['theme'];
/** 菜单点击事件 */
onItemClick?: MenuProps['onItemClick'];
/** 默认展开的节点 */
defaultOpenKeys?: string[] | OpenKeysType;
/** 展开的节点 */
openKeys?: string[] | OpenKeysType;
/** 是否默认展开所有节点 */
defaultOpenAll?: boolean;
/** 节点展开事件 */
onOpenKeysChange?: (openKeys: OpenKeysType) => void;
/** 点击包含子菜单的项目时,强制开启 */
toggleOnItemClick?: boolean;
classPrefix?: string;
/** 内部容器的 className */
wrapperClassName?: string;
/** 内部容器的 className */
wrapperStyle?: React.CSSProperties;
}
declare const MenuLayout: (props: MenuLayoutProps) => import("react/jsx-runtime").JSX.Element;
export default MenuLayout;