tdesign-react
Version:
TDesign Component for React
42 lines (41 loc) • 1.01 kB
TypeScript
import { ReactNode } from 'react';
import type { MenuValue } from '../type';
export declare class MenuTree {
private menuMap;
private expandedSet;
private expandMutex;
constructor(children: ReactNode, expandMutex?: boolean);
/**
* 构建菜单树结构
*/
private buildTree;
private traverseChildren;
/**
* 更新当前展开的菜单列表
*/
setExpanded(expandedList: MenuValue[]): void;
/**
* 获取当前展开的菜单列表
*/
getExpanded(): MenuValue[];
/**
* 检查节点是否展开
*/
isExpanded(value: MenuValue): boolean;
/**
* 获取所有祖先节点
*/
getAncestors(value: MenuValue): MenuValue[];
/**
* 获取所有子孙节点
*/
getDescendants(value: MenuValue): MenuValue[];
/**
* 获取所有同级节点
*/
getSiblings(value: MenuValue): MenuValue[];
/**
* 更新节点的展开状态
*/
expandNode(value: MenuValue): void;
}