@opensig/opendesign
Version:
<p align="center"><img src="../docs/public/opendesign-logo-light.png"/></p> <h1 align="center">opendesign</h1> <p align="center">一个 Vue 3 组件库</p> <p align="center"><b>皮肤可定制,使用 TypeScript</b></p>
27 lines (26 loc) • 860 B
TypeScript
import { CascaderValueT, CascaderOptionT } from './types';
interface CascaderNodeT {
value: string | number;
label?: string;
depth: number;
parent: CascaderNodeT | null;
children: CascaderNodeT[];
isLeaf: boolean;
}
export interface ColumnInfoT {
value: string | number;
label?: string;
depth: number;
isLeaf: boolean;
isActive: boolean;
}
export default class CascaderTree {
root: CascaderNodeT;
constructor();
updateTree(options: Array<CascaderOptionT>): void;
getNode(node: CascaderNodeT, val: string | number): CascaderNodeT | undefined;
getChild(node: CascaderNodeT, val: string | number): CascaderNodeT | undefined;
getPanelInfo(val: CascaderValueT | undefined): ColumnInfoT[][];
getNextColumnInfo(node: CascaderNodeT, activeVal?: string | number): Array<ColumnInfoT>;
}
export {};